:root{--ink:#17251f;--muted:#6b7871;--paper:#f5f7f4;--card:#fff;--line:#dfe6e1;--green:#176b4c;--green-dark:#103c2d;--mint:#e2f3e9;--orange:#f3a45b;--red:#b94b45;--blue:#4e7db3;--shadow:0 10px 32px rgba(30,58,45,.07)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 Inter,"Segoe UI",sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:var(--green-dark);color:#fff;padding:24px 16px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:20px;font-weight:650;padding:0 10px}.brand b{color:#8fe0ba}.brand-mark{width:34px;height:34px;border-radius:10px;display:inline-grid;place-items:center;background:#8fe0ba;color:var(--green-dark);font-weight:900}.main-nav{display:flex;flex-direction:column;gap:4px;margin-top:34px;overflow:auto}.main-nav a{display:flex;gap:12px;align-items:center;color:#cfe0d7;text-decoration:none;padding:10px 12px;border-radius:9px;font-weight:600}.main-nav a:hover,.main-nav a:focus{background:#ffffff16;color:#fff}.main-nav a span{width:22px;text-align:center;font-size:18px}.sidebar-account{margin-top:auto;border-top:1px solid #ffffff1c;padding:16px 6px 0;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center}.sidebar-account>div{display:flex;flex-direction:column;min-width:0}.sidebar-account strong,.sidebar-account small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-account strong{font-size:12px}.sidebar-account small{font-size:11px;color:#9eb6aa}.sidebar-account form{margin:0}.icon-button{border:0;background:none;color:#dceae3;cursor:pointer;font-size:20px}.app-shell{margin-left:248px;min-height:100vh}.app-shell.signed-out{margin-left:0}.mobile-bar{display:none}.page{max-width:1480px;margin:auto;padding:34px 34px 52px}.narrow{max-width:760px}.eyebrow{color:var(--green);font-size:11px;font-weight:850;letter-spacing:1.5px;text-transform:uppercase;margin:0 0 6px}h1{font-size:34px;line-height:1.15;margin:0 0 8px;letter-spacing:-1px}h2{letter-spacing:-.3px}.muted{color:var(--muted);margin:0}.page-heading,.welcome-row,.schedule-head,.profile-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px}.actions{display:flex;gap:9px;flex-wrap:wrap}.button,.primary,.danger-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid var(--line);background:#fff;color:var(--ink);padding:10px 14px;border-radius:9px;font-weight:700;cursor:pointer}.primary{background:var(--green);color:#fff;border-color:var(--green)}.primary:hover{background:#125a40}.card,.login-card{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.message-stack{position:fixed;right:24px;top:18px;z-index:50;width:min(430px,calc(100% - 32px))}.message{background:var(--mint);color:var(--green-dark);padding:13px 16px;border:1px solid #bcdec9;border-radius:10px;box-shadow:var(--shadow);margin-bottom:8px}.message.error{background:#fce9e7;color:#8b302b;border-color:#efc2bd}.back{display:inline-block;color:var(--muted);text-decoration:none;margin-bottom:22px;font-weight:650}.avatar-lg{flex:none;width:38px;height:38px;border-radius:11px;display:inline-grid;place-items:center;background:var(--mint);color:var(--green);font-weight:850}.sidebar .avatar-lg{width:34px;height:34px;background:#ffffff18;color:#fff}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 75% 20%,#d9eee2,transparent 34%),var(--paper)}.login-card{width:min(450px,100%);padding:42px}.login-brand{display:flex;align-items:center;gap:10px;font-size:21px;margin-bottom:38px}.form-intro{margin-top:4px}.stack{display:grid;gap:18px}.form-card{padding:28px;margin-top:24px}.stack>div{display:grid;gap:6px}.stack label,.question-block label{font-weight:750}.stack input,.stack select,.stack textarea,.question-block input,.question-block select,.question-block textarea,.search-bar input,.inline-filter input{width:100%;border:1px solid #c9d4cd;border-radius:9px;padding:11px 12px;background:#fff;color:var(--ink)}.stack input:focus,.stack select:focus,.stack textarea:focus,.question-block input:focus,.question-block select:focus,.question-block textarea:focus{outline:3px solid #cde9d8;border-color:var(--green)}.stack input[type=checkbox]{width:auto}.stack ul{margin:5px 0;padding-left:20px}.stack .helptext{font-size:12px;color:var(--muted)}.stack .errorlist{color:#a43631;margin:0;padding-left:20px}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:8px}.danger-zone{margin-top:18px;border:1px solid #edc9c5;background:#fff7f6;border-radius:12px;padding:17px;display:flex;justify-content:space-between;align-items:center;gap:18px}.danger-zone>div{display:flex;flex-direction:column}.danger-zone small{color:var(--muted)}.danger-button{border-color:#d8756e;color:#9a342e;background:#fff}
.login-switch{display:flex;flex-direction:column;align-items:center;gap:3px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.login-switch a{color:var(--green);font-weight:800;text-decoration:none}.client-login-shell{background:radial-gradient(circle at 25% 15%,#d9eee2,transparent 34%),#f1f6f3}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;display:grid;grid-template-columns:auto 1fr;gap:12px;box-shadow:var(--shadow)}.stat-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;font-weight:850}.stat-icon.green{background:var(--mint);color:var(--green)}.stat-icon.orange{background:#fff0e1;color:#bb6626}.stat-icon.blue{background:#e9f1fa;color:var(--blue)}.stat-icon.red{background:#fae9e7;color:var(--red)}.stat-card>div{display:flex;flex-direction:column}.stat-card small{color:var(--muted)}.stat-card strong{font-size:25px}.stat-card>a,.stat-hint{grid-column:2;color:var(--green);font-size:12px;text-decoration:none;font-weight:700}.stat-hint{color:var(--muted)}.dashboard-grid,.client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.span-two{grid-column:span 2}.panel-card{padding:20px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:15px}.panel-heading h2{font-size:18px;margin:0}.panel-heading p{font-size:12px;color:var(--muted);margin:2px 0 0}.panel-heading>a{font-size:12px;color:var(--green);font-weight:750;text-decoration:none}.timeline-row{display:grid;grid-template-columns:50px 12px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--line);text-decoration:none}.timeline-row time{font-weight:800}.timeline-mark{width:9px;height:9px;border-radius:50%;background:var(--green)}.timeline-row>div,.compact-row>div,.staff-row>div,.package-row>div,.offer-row>div,.assessment-row>div{display:flex;flex-direction:column}.timeline-row small,.compact-row small,.staff-row small,.package-row small,.offer-row small,.assessment-row small{color:var(--muted)}.progress-row{display:grid;grid-template-columns:110px 1fr 38px;align-items:center;gap:10px;padding:9px 0}.progress-row>div:first-child{display:flex;flex-direction:column}.progress-row small{font-size:11px;color:var(--muted)}.progress-track{height:7px;background:#e8ede9;border-radius:10px;overflow:hidden}.progress-track span{display:block;height:100%;background:var(--green);border-radius:10px}.progress-row>b{font-size:12px}.compact-row,.package-row,.offer-row,.staff-row,.assessment-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line);text-decoration:none}.balance-pill{font-weight:800;background:var(--mint);color:var(--green);padding:5px 8px;border-radius:8px}.overdue{color:var(--red);font-weight:800}.empty-state{padding:24px 8px;color:var(--muted);text-align:center;display:flex;flex-direction:column}.status{white-space:nowrap;font-size:11px;font-weight:800;color:#737e78;background:#edf0ee;border-radius:20px;padding:5px 9px}.status.active{color:var(--green);background:var(--mint)}
.search-bar{display:flex;gap:8px;max-width:600px;margin-bottom:16px}.table-card{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line)}.data-table th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px;background:#fafcfa}.data-table td>span,.data-table td>small{display:block}.data-table td small{color:var(--muted)}.person-cell{display:flex;align-items:center;gap:10px;text-decoration:none}.row-link{color:var(--green);text-decoration:none;font-weight:750;font-size:12px}.profile-head{align-items:center}.profile-avatar{width:70px;height:70px;border-radius:18px;display:grid;place-items:center;background:var(--green);color:#fff;font-size:22px;font-weight:850}.profile-head>div:nth-child(2){margin-right:auto}.package-row{display:grid;grid-template-columns:minmax(180px,1fr) auto auto}.package-balance strong{font-size:20px}.package-balance small{font-size:10px}.document-row{padding:12px 0;border-top:1px solid var(--line)}.document-row summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer}.document-row summary>div{display:flex;flex-direction:column}.document-row>small{display:block;color:var(--muted);margin-top:3px}.document-content{font-size:13px;color:#3f4c46;background:#f7f9f7;padding:12px;border-radius:8px;margin-top:10px;max-height:320px;overflow:auto}
.two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.staff-row{justify-content:flex-start}.staff-row>div{flex:1}.privacy-note{background:#f0f7f3;border-radius:10px;padding:14px;margin-top:16px}.privacy-note p{margin:4px 0 0;color:var(--muted);font-size:12px}.package-hero{display:grid;grid-template-columns:repeat(3,1fr);background:var(--green-dark);color:#fff;border-radius:15px;padding:24px;margin-bottom:18px}.package-hero>div{display:flex;flex-direction:column;padding:0 20px;border-right:1px solid #ffffff20}.package-hero>div:last-child{border:0}.package-hero small,.package-hero span{color:#aec6ba}.package-hero strong{font-size:34px}.text-size{font-size:17px!important}.detail-list{margin:0}.detail-list>div{display:grid;grid-template-columns:110px 1fr;padding:11px 0;border-top:1px solid var(--line)}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0;font-weight:650}.ledger-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-top:1px solid var(--line)}.ledger-row>div{display:flex;flex-direction:column}.ledger-row small{color:var(--muted)}.ledger-delta{width:36px;height:36px;border-radius:10px;background:#f7e7e5;color:var(--red);display:grid;place-items:center;font-weight:850}.ledger-delta.positive{background:var(--mint);color:var(--green)}
.template-card{border-top:1px solid var(--line);padding:13px 0}.template-card summary{display:flex;justify-content:space-between;cursor:pointer}.template-card summary>div{display:flex;flex-direction:column;align-items:flex-start}.template-card p,.template-card li{font-size:13px;color:#4e5b54}.category-chip{font-size:10px;text-transform:uppercase;background:#e8f1ec;color:var(--green);padding:3px 6px;border-radius:5px;font-weight:800}.questionnaire-form{padding:28px;margin-top:24px}.question-block{padding:17px 0;border-bottom:1px solid var(--line);display:grid;gap:8px}.question-block label span{color:var(--green);margin-right:5px}.question-block label b{color:var(--red)}.scale-input{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center}.test-group h3{font-size:13px;color:var(--green);text-transform:uppercase;margin:18px 0 5px}.test-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--line)}.test-row>div{display:flex;flex-direction:column}.test-row small{color:var(--muted)}.assessment-row{justify-content:flex-start}.assessment-row>div:nth-child(2){flex:1}.date-box{width:52px;align-items:center;background:#f0f5f2;border-radius:9px;padding:5px}.date-box strong{font-size:18px}.result-card{overflow:hidden}.result-summary{display:grid;grid-template-columns:repeat(3,1fr);background:var(--green-dark);color:#fff;padding:20px}.result-summary>div{display:flex;flex-direction:column}.result-summary small{color:#aec6ba}.result-summary strong{font-size:26px}.notes-box{margin:18px;padding:15px;background:#f4f7f5;border-radius:9px}.notes-box p{margin:4px 0 0}
.schedule-page{max-width:1700px}.view-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px}.segmented{display:flex;background:#e5e9e3;border-radius:9px;padding:3px}.segmented a{padding:7px 15px;border-radius:7px;text-decoration:none;color:var(--muted);font-weight:700}.segmented a.active{background:#fff;color:var(--green);box-shadow:0 1px 4px #102d2218}.trainer-filter{position:relative}.trainer-filter summary{list-style:none;cursor:pointer;background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 13px;font-weight:700}.trainer-filter form{position:absolute;z-index:20;top:45px;left:0;width:250px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);display:grid;gap:10px}.trainer-filter label{display:flex;gap:8px}.legend{margin-left:auto;color:var(--muted);display:flex;align-items:center;gap:7px;font-size:13px}.dot{width:10px;height:10px;border-radius:3px;margin-left:6px}.dot.free{background:#fff;border:1px solid #b9c9bf}.dot.busy{background:var(--green)}.dot.blocked{background:#d8d3c8}.day-board{background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:18px;overflow:hidden}.day-board>header{display:flex;align-items:baseline;gap:10px;padding:13px 18px;background:#f9faf7;border-bottom:1px solid var(--line)}.day-board h2{font-size:17px;margin:0}.day-board header span{color:var(--muted);font-size:13px}.table-scroll{overflow:auto}.schedule-grid{border-collapse:collapse;width:100%;table-layout:fixed;min-width:760px}.schedule-grid th,.schedule-grid td{border-right:1px solid #e9ede8;border-bottom:1px solid #edf0ec}.schedule-grid thead th{height:52px;text-align:left;padding:8px 12px;background:#fbfcfa;position:sticky;top:0;z-index:3}.schedule-grid thead th:not(.time-col){min-width:210px}.schedule-grid .avatar{display:inline-grid;width:28px;height:28px;border-radius:50%;place-items:center;background:var(--mint);color:var(--green);font-weight:800;margin-right:8px}.schedule-grid .time-col{width:64px;text-align:center;color:var(--muted);font-size:12px;background:#fafbf8}.schedule-grid td{height:42px;position:relative;padding:0}.slot-free:hover{background:#eef8f2}.free-slot{position:absolute;inset:0;display:grid;place-items:center;text-decoration:none;color:transparent;font-size:19px}.free-slot:hover{color:var(--green)}.slot-blocked{background:repeating-linear-gradient(135deg,#f2f1ed,#f2f1ed 5px,#eeece7 5px,#eeece7 10px)}.slot-booking{background:#e9f5ed}.event{position:absolute;inset:2px 5px;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:4px 8px;border-radius:5px;text-decoration:none;overflow:hidden}.event strong,.event small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.event strong{font-size:12px}.event small{font-size:10px}.booking-event{background:var(--green);color:#fff}.block-event{background:#8d826f;color:#fff}.continuation{position:absolute;inset:0 5px;background:#d9eee1}.continuation.blocked{background:#ddd7cc}.unavailable-label{font-size:10px;color:#8a8274;padding:6px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.management-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.management-grid .card{padding:20px}.management-grid h2{font-size:18px;margin:0 0 15px}.manage-row{padding:13px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px}.manage-row>div:first-child{display:flex;flex-direction:column}.manage-row small{color:var(--muted)}.row-actions{display:flex;gap:8px;align-items:center}.row-actions a,.row-actions button{border:0;background:none;color:var(--green);font:inherit;font-size:12px;cursor:pointer;text-decoration:none}.row-actions form{margin:0}.series-preview{border-top:1px solid var(--line);padding-top:16px}.series-preview h2{font-size:17px;margin:0 0 10px}.preview-row{display:flex;justify-content:space-between;gap:12px;padding:8px;border-radius:6px;margin:4px 0;font-size:13px}.preview-row.ok{background:#edf8f1;color:var(--green)}.preview-row.conflict{background:#faece8;color:#943f2d}.danger-soft{background:#9a422f}.inline-filter{display:flex;gap:8px}.audit-table{padding:0;overflow:hidden}.audit-row{border-bottom:1px solid var(--line)}.audit-row summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:15px 20px}.audit-row summary>span{display:flex;flex-direction:column}.audit-row small{color:var(--muted)}.audit-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 20px 18px}.audit-values pre{white-space:pre-wrap;word-break:break-word;background:#f5f6f2;padding:10px;border-radius:6px;font-size:11px}.card h2{margin-top:0}.empty{padding:28px;color:var(--muted);text-align:center}
@media(max-width:1200px){.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.client-grid{grid-template-columns:repeat(2,1fr)}.span-two{grid-column:span 2}.management-grid{grid-template-columns:1fr}.audit-values{grid-template-columns:1fr}}
@media(max-width:850px){.sidebar{position:static;width:auto;height:auto;padding:14px}.sidebar>.brand{display:none}.main-nav{margin:0;flex-direction:row;overflow:auto;padding-bottom:5px}.main-nav a{white-space:nowrap;background:#ffffff0b}.sidebar-account{display:none}.app-shell{margin-left:0}.mobile-bar{display:flex;background:var(--green-dark);color:#fff;padding:11px 16px;justify-content:space-between;align-items:center}.mobile-bar .brand{padding:0;font-size:17px}.page{padding:25px 16px}.page-heading,.welcome-row,.schedule-head,.profile-head{align-items:flex-start;flex-direction:column}.profile-head>div:nth-child(2){margin:0}.actions{width:100%}.actions .button{flex:1}.two-column,.dashboard-grid,.client-grid{grid-template-columns:1fr}.span-two{grid-column:auto}.stat-grid{grid-template-columns:1fr 1fr}.legend{width:100%;margin-left:0}.schedule-grid{min-width:650px}.day-board{margin-left:-8px;margin-right:-8px}.package-hero{grid-template-columns:1fr}.package-hero>div{padding:12px 0;border-right:0;border-bottom:1px solid #ffffff20}.package-row{grid-template-columns:1fr auto}.package-row>div:last-child{grid-column:1/-1}.table-card{margin-left:-8px;margin-right:-8px}.result-summary{grid-template-columns:1fr;gap:12px}}
@media(max-width:540px){h1{font-size:29px}.stat-grid{grid-template-columns:1fr}.login-card{padding:28px}.form-card,.questionnaire-form{padding:20px}.timeline-row{grid-template-columns:42px 10px 1fr}.timeline-row .status{display:none}.progress-row{grid-template-columns:95px 1fr 34px}.danger-zone{align-items:flex-start;flex-direction:column}.danger-button{width:100%}.profile-avatar{width:58px;height:58px}.package-row{display:flex;align-items:flex-start}.result-card .data-table{min-width:650px}.result-card{overflow:auto}}

.questionnaire-section{margin:32px -10px 0;padding:20px 10px 8px;border-top:2px solid #dce8e1}.questionnaire-section:first-of-type{margin-top:4px;border-top:0}.questionnaire-section span{font-size:10px;font-weight:850;letter-spacing:.12em;color:var(--green)}.questionnaire-section h2{margin:4px 0 0;font-size:20px}.client-create-form>.form-section-title{margin-top:10px}.client-create-form>.form-section-title:first-child{margin-top:0}
.form-secondary{display:flex;justify-content:flex-end;margin-top:12px}.training-layout{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)}.training-row{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;padding:13px 0;border-top:1px solid var(--line);text-decoration:none}.training-row>div{display:flex;flex-direction:column}.training-row small{color:var(--muted)}.training-date{display:flex;flex-direction:column;align-items:center;background:var(--mint);color:var(--green);border-radius:10px;padding:5px}.training-date strong{font-size:19px;line-height:1}.training-date small{font-size:10px;color:var(--green)}.exercise-library h3{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--green);margin:18px 0 3px}.training-summary{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:18px;overflow:hidden}.training-summary>div{display:flex;flex-direction:column;padding:18px 22px;border-right:1px solid var(--line)}.training-summary>div:last-child{border:0}.training-summary small{color:var(--muted)}.training-summary strong{font-size:18px}.training-exercises{display:grid;gap:16px}.exercise-card{overflow:hidden}.exercise-card>header{display:flex;justify-content:space-between;align-items:center;padding:17px 20px;border-bottom:1px solid var(--line)}.exercise-card>header>div{display:flex;align-items:center;gap:11px}.exercise-card h2{margin:0;font-size:18px}.exercise-card header small{color:var(--muted)}.exercise-number{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:var(--green);color:#fff;font-weight:850}.set-table th,.set-table td{padding:11px 18px}.training-empty{gap:12px;align-items:center}.training-empty .button{margin-top:7px}
@media(max-width:850px){.training-layout{grid-template-columns:1fr}.training-summary{grid-template-columns:1fr 1fr}.training-summary>div:nth-child(2){border-right:0}.exercise-card .data-table{min-width:720px}}

/* Uproszczona architektura panelu */
.mobile-menu-close,.mobile-bottom{display:none}.main-nav{padding-right:4px}.nav-label{margin:0 12px 5px;color:#7fa394;font-size:10px;font-weight:850;letter-spacing:1.25px;text-transform:uppercase}.nav-label-spaced{margin-top:18px}.main-nav a.active{background:#ffffff18;color:#fff;box-shadow:inset 3px 0 #8fe0ba}.nav-icon{width:22px;text-align:center;font-size:17px}.nav-group summary{display:flex;align-items:center;gap:12px;color:#cfe0d7;padding:10px 12px;border-radius:9px;font-weight:600;cursor:pointer;list-style:none}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary b{margin-left:auto;font-size:12px}.nav-group[open] summary{color:#fff;background:#ffffff0b}.nav-group>div{display:grid;margin:3px 0 3px 34px;border-left:1px solid #ffffff24;padding-left:8px}.nav-group>div a{padding:7px 10px;font-size:13px}.topbar{height:68px;position:sticky;top:0;z-index:15;background:rgba(245,247,244,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);padding:10px 34px;display:flex;align-items:center;gap:14px}.global-search{width:min(430px,45vw);display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;padding-left:12px}.global-search input{width:100%;border:0;outline:0;padding:9px;background:transparent}.global-search button{border:0;background:none;color:var(--green);font-weight:750;padding:9px 12px;cursor:pointer}.quick-create{position:relative;margin-left:auto}.quick-create summary,.more-actions summary{list-style:none;cursor:pointer}.quick-create summary{background:var(--green);color:#fff;padding:9px 15px;border-radius:9px;font-weight:800}.quick-create>div,.more-actions>div{position:absolute;right:0;top:45px;min-width:210px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:7px;display:grid;z-index:30}.quick-create a,.more-actions a{padding:9px 11px;text-decoration:none;border-radius:7px;font-weight:650}.quick-create a:hover,.more-actions a:hover{background:var(--mint);color:var(--green)}.topbar-user{display:flex;align-items:center;gap:9px;border-left:1px solid var(--line);padding-left:14px}.topbar-user>div{display:flex;flex-direction:column}.topbar-user strong{font-size:12px}.topbar-user small{font-size:11px;color:var(--muted)}.more-actions{position:relative}.icon-only{min-width:42px;padding-left:11px;padding-right:11px}

.daily-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.8fr);align-items:start;gap:18px;margin-bottom:18px}.dashboard-main-column{display:grid;gap:18px;min-width:0}.dashboard-main-column .compact-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.today-panel,.attention-panel,.occupancy-card{padding:20px}.today-panel .timeline-row{min-height:64px}.today-panel.is-empty .panel-heading{margin-bottom:4px}.dashboard-empty-state{align-items:flex-start;padding:10px 0 2px;text-align:left;gap:2px}.dashboard-empty-state>span{color:#586a61;font-size:12px}.next-booking-link{display:inline-flex;align-items:center;gap:7px;color:#586a61;font-size:12px;text-decoration:none;border-radius:5px}.next-booking-link b{color:var(--green)}.next-booking-link:hover{color:var(--green);text-decoration:underline}.next-booking-link:focus-visible{outline:3px solid rgba(18,103,71,.24);outline-offset:3px}.attention-list{display:grid}.attention-list>a{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;min-height:52px;padding:10px 0;border-top:1px solid var(--line);text-decoration:none;border-radius:8px}.attention-list>a>div{display:flex;flex-direction:column}.attention-list small{color:#586a61;font-size:12px}.attention-list b{color:var(--green)}.attention-list>a:hover{background:#f7faf8}.attention-list>a:focus-visible,.compact-stats .stat-card:focus-visible,.panel-heading>a:focus-visible{outline:3px solid rgba(18,103,71,.24);outline-offset:2px}.attention-finance strong{color:#8f3934}.attention-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--mint);color:var(--green);font-weight:850}.attention-icon.warning{background:#fff0e1;color:#b46022}.attention-icon.danger{background:#fae9e7;color:var(--red)}.attention-icon.neutral{background:#edf0ee;color:#69756f}.compact-stats{margin-top:0}.compact-stats .stat-card{text-decoration:none;transition:border-color .15s ease,transform .15s ease}.compact-stats .stat-card:hover{border-color:#bdd2c5;transform:translateY(-1px)}.stat-link{grid-column:2;color:var(--green);font-size:12px;font-weight:750}.occupancy-card{margin-top:0}.occupancy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 24px}.occupancy-card .progress-row{grid-template-columns:minmax(145px,auto) 1fr 38px}.occupancy-card .progress-row small{font-size:12px;color:#586a61}

.week-board{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));gap:10px;overflow-x:auto;padding-bottom:8px}.week-day{min-height:520px;background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;overflow:hidden}.week-day.today{border:3px solid #087a52}.week-day.today>header{background:#f2f9f4}.week-day>header{padding:13px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-start;gap:6px}.week-day>header a{display:flex;flex-direction:column;text-decoration:none}.week-day>header strong{text-transform:capitalize}.week-day>header span,.week-day>header small{color:var(--muted);font-size:11px}.week-events{padding:7px;display:grid;gap:7px;align-content:start;flex:1}.week-event{display:grid;gap:4px;background:var(--mint);border-left:3px solid var(--green);border-radius:7px;padding:8px;text-decoration:none}.week-event time{color:var(--green);font-size:11px;font-weight:850}.week-event>div{display:flex;flex-direction:column}.week-event strong{font-size:12px}.week-event small{font-size:10px;color:var(--muted)}.week-empty{display:grid;place-items:center;gap:6px;color:var(--muted);font-size:12px;padding:30px 5px}.week-empty a,.day-link{color:var(--green);text-decoration:none;font-weight:750}.day-link{padding:10px 12px;border-top:1px solid var(--line);font-size:11px}.schedule-grid thead th,.schedule-grid .time-col{position:sticky}.schedule-grid .time-col{left:0;z-index:4}
.booking-source{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin-top:5px;padding:2px 6px;border-radius:999px;background:#edf0ee;color:#52645b;font-size:8px;font-weight:850;line-height:1.35;white-space:nowrap}.booking-source-package{background:#dff2e6;color:#126747}.booking-source-recurring,.booking-source-client{background:#e8f0fb;color:#376a9e}.booking-source-series{background:#fff0e1;color:#9a5b21}.booking-event{flex-direction:row;align-items:center;justify-content:space-between;gap:5px}.booking-event .event-copy{display:flex;min-width:0;flex-direction:column;overflow:hidden}.booking-event .booking-source{flex:none;max-width:74px;margin:0;overflow:hidden;text-overflow:ellipsis}.week-event .booking-source{max-width:100%;overflow:hidden;text-overflow:ellipsis}.package-alert-low,.package-alert-none{background:color-mix(in srgb,var(--package-alert-color) 24%,#fff);border-left-color:var(--package-alert-color);color:#17362a}.booking-event.package-alert-low,.booking-event.package-alert-none{box-shadow:inset 5px 0 0 var(--package-alert-color)}.package-alert-low time,.package-alert-none time{color:#17362a}.dot.package-low,.dot.package-none{background:var(--package-alert-color);border:1px solid color-mix(in srgb,var(--package-alert-color) 75%,#000)}

.client-summary{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:18px;overflow:hidden}.client-summary>div{padding:17px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.client-summary>div:last-child{border:0}.client-summary small,.client-summary span{color:var(--muted);font-size:11px}.client-summary strong{font-size:17px;margin:3px 0}.client-summary a{font-size:11px;color:var(--green);font-weight:750;text-decoration:none}.tabs{display:flex;gap:3px;overflow:auto;border-bottom:1px solid var(--line);margin-bottom:18px}.tabs a{padding:11px 14px;text-decoration:none;color:var(--muted);font-weight:700;white-space:nowrap;border-bottom:3px solid transparent}.tabs a.active{color:var(--green);border-bottom-color:var(--green)}.tab-panel{max-width:1050px}.checklist{list-style:none;margin:0;padding:0;display:grid;gap:10px}.checklist li{display:flex;align-items:center;gap:10px;color:var(--muted)}.checklist li span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#edf0ee;font-weight:800}.checklist li.done{color:var(--ink)}.checklist li.done span{background:var(--mint);color:var(--green)}

.form-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px;align-items:start}.booking-layout .form-card{margin-top:0}.booking-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.booking-form>div{min-width:0}.booking-form>div:has(textarea),.booking-form>div:has(input[type=checkbox]),.booking-form>.form-section-title,.booking-form>.sticky-form-actions,.booking-form>.errorlist{grid-column:1/-1}.form-section-title{display:flex;flex-direction:column;padding-bottom:14px;border-bottom:1px solid var(--line)}.form-section-title small{color:var(--muted)}.sticky-form-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:16px;border-top:1px solid var(--line)}.booking-side{display:grid;gap:14px;position:sticky;top:86px}.action-card,.cancel-card{padding:18px;display:grid;gap:10px}.action-card h2{font-size:17px;margin:0 0 4px}.cancel-card small{color:var(--muted)}.full{width:100%}
.quick-slots-card>p,.action-card>p{margin:0;color:var(--muted);font-size:13px}.quick-slot-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}.quick-slot-list a{display:flex;flex-direction:column;padding:10px;border:1px solid var(--line);border-radius:9px;text-decoration:none;color:var(--ink);background:#fff}.quick-slot-list a:hover{border-color:var(--green);background:var(--green-soft)}.quick-slot-list strong{font-size:12px}.quick-slot-list span{font-size:17px;font-weight:800;color:var(--green)}.change-trainer{text-align:center;font-size:12px;margin-top:3px}
.flow-filter-bar{display:grid;grid-template-columns:repeat(6,1fr);overflow:hidden;margin-bottom:16px}.flow-filter-bar button{border:0;border-right:1px solid var(--line);background:#fff;padding:14px 12px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;color:var(--muted);cursor:pointer}.flow-filter-bar button:last-child{border-right:0}.flow-filter-bar button strong{font-size:23px;color:var(--ink)}.flow-filter-bar button span{font-size:11px;font-weight:750}.flow-filter-bar button:hover,.flow-filter-bar button.active{background:var(--green-soft);color:var(--green)}.flow-filter-bar button.active.studio{background:#fff1e7;color:#a6531e}.flow-filter-bar button.active.client{background:#eef4ff;color:#315f9a}.flow-filter-bar button.active.scheduled{background:#f3efff;color:#66509c}.client-flow-table{overflow:auto}.client-flow-table table{min-width:1120px}.client-flow-table td{vertical-align:middle}.client-flow-table td>strong,.client-flow-table td>small,.client-flow-table td>span{display:block}.person-cell>span:last-child{display:flex;flex-direction:column}.person-cell small,.client-flow-table td small{color:var(--muted);font-size:11px;margin-top:3px}.client-flow-table .inferred{max-width:145px}.flow-warning{color:#9d4d18!important;font-weight:700;max-width:230px}.responsibility{display:inline-flex!important;width:max-content;align-items:center;padding:5px 9px;border-radius:999px;font-size:11px!important;font-weight:800;white-space:nowrap}.responsibility-studio{background:#fff0e4;color:#a04d17}.responsibility-client{background:#eaf2ff;color:#315f9a}.responsibility-scheduled{background:#f0ecff;color:#634c98}.responsibility-ok{background:var(--mint);color:var(--green)}.responsibility-closed{background:#edf0ee;color:#69756f}.flow-row.flow-studio{box-shadow:inset 4px 0 #d77736}.flow-row.flow-client{box-shadow:inset 4px 0 #7399c9}.flow-row.flow-scheduled{box-shadow:inset 4px 0 #8d77bd}.workflow-focus{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px;padding:25px;margin-bottom:16px;border-left:5px solid var(--green);scroll-margin-top:90px}.workflow-focus.responsibility-studio{border-left-color:#d77736;background:linear-gradient(120deg,#fff8f2,#fff 60%)}.workflow-focus.responsibility-client{border-left-color:#7399c9;background:linear-gradient(120deg,#f4f8ff,#fff 60%)}.workflow-focus.responsibility-scheduled{border-left-color:#8d77bd;background:linear-gradient(120deg,#f8f6ff,#fff 60%)}.workflow-focus-main{display:grid;gap:10px}.workflow-label{display:flex;align-items:center;gap:10px}.workflow-label>div{display:flex;flex-direction:column}.workflow-label small{font-size:10px;color:var(--muted);font-weight:800;letter-spacing:.08em}.workflow-label strong{font-size:15px}.workflow-pulse{width:12px;height:12px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px var(--mint)}.workflow-focus h2{font-size:24px;line-height:1.25;margin:3px 0 0;max-width:760px}.workflow-focus .responsibility{position:absolute;margin-left:190px}.workflow-warning{padding:11px 13px;border-radius:9px;background:#fff0e4;color:#8c4518;font-weight:750;width:max-content;max-width:100%}.workflow-focus-action{display:flex;flex-direction:column;justify-content:center;gap:10px}.workflow-primary{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center}.workflow-more{position:relative}.workflow-more summary{cursor:pointer;text-align:center;color:var(--muted);font-size:12px;font-weight:750}.workflow-more>div{display:grid;margin-top:7px;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff}.workflow-more a{padding:9px 11px;text-decoration:none;border-bottom:1px solid var(--line);font-size:12px}.workflow-more a:last-child{border:0}.onboarding-step.current{border-color:#d77736;background:#fff7f0}.onboarding-step.current>span{background:#d77736;color:#fff}.onboarding-step.current strong{color:#9a4917}
@media(max-width:1050px){.flow-filter-bar{grid-template-columns:repeat(3,1fr)}.flow-filter-bar button:nth-child(3){border-right:0}.flow-filter-bar button:nth-child(-n+3){border-bottom:1px solid var(--line)}.workflow-focus{grid-template-columns:1fr}.workflow-focus-action{max-width:420px}}
@media(max-width:850px){.flow-filter-bar{grid-template-columns:repeat(2,1fr)}.flow-filter-bar button{border-bottom:1px solid var(--line)!important}.flow-filter-bar button:nth-child(2n){border-right:0}.workflow-focus{padding:20px}.workflow-focus h2{font-size:21px}.client-flow-table .data-table th:nth-child(2),.client-flow-table .data-table td:nth-child(2),.client-flow-table .data-table th:nth-child(4),.client-flow-table .data-table td:nth-child(4){display:table-cell}.client-flow-table .data-table th:nth-child(5),.client-flow-table .data-table td:nth-child(5),.client-flow-table .data-table th:nth-child(6),.client-flow-table .data-table td:nth-child(6){display:none}.client-flow-table table{min-width:760px}}
.workflow-focus .responsibility{position:static;margin-left:0;margin-top:2px}
.smtp-state{padding:7px 11px;border-radius:999px;background:#edf0ee;color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase}.smtp-state.active{background:#dff3e7;color:var(--green)}.smtp-form{padding:26px}.smtp-security{display:flex;gap:13px;align-items:flex-start;padding:14px 16px;background:#eef7f2;border:1px solid #cfe7d9;border-radius:10px;margin-bottom:22px}.smtp-security>span{font-size:22px}.smtp-security p{margin:3px 0 0;color:var(--muted);font-size:12px}.password-field{position:relative}.password-saved,.password-missing{display:block;margin-top:6px;font-weight:750}.password-saved{color:var(--green)}.password-missing{color:#a06b17}.smtp-test{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end;margin-top:22px;padding:18px;background:#f6f8f6;border-radius:10px}.smtp-test>div{display:flex;flex-direction:column;gap:5px}.smtp-test small{color:var(--muted)}
@media(max-width:700px){.smtp-test{grid-template-columns:1fr}.smtp-test .button{width:100%}}

.list-toolbar{display:flex;gap:8px;margin-bottom:16px;max-width:800px}.search-field{flex:1;display:flex;align-items:center;background:#fff;border:1px solid #c9d4cd;border-radius:9px;padding-left:12px}.search-field input{width:100%;border:0;outline:0;padding:11px;background:transparent}.list-toolbar select{border:1px solid #c9d4cd;background:#fff;border-radius:9px;padding:10px 35px 10px 12px}.page-tabs{margin-top:-4px}.exercise-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px}.exercise-library h3{margin-top:8px}

@media(max-width:1200px){.week-board{grid-template-columns:repeat(7,minmax(170px,1fr))}.daily-layout{grid-template-columns:1fr}.occupancy-grid{grid-template-columns:1fr 1fr}.client-summary{grid-template-columns:1fr 1fr}.client-summary>div:nth-child(2){border-right:0}.client-summary>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:850px){body{padding-bottom:70px}.sidebar{display:none}.sidebar:target{display:flex;position:fixed;inset:0;width:min(330px,88vw);height:100vh;padding:20px 16px;z-index:80}.sidebar:target>.brand{display:flex}.sidebar:target .main-nav{flex-direction:column;overflow:auto;margin-top:28px}.sidebar:target .sidebar-account{display:grid}.mobile-menu-close{display:block;position:absolute;right:16px;top:15px;color:#fff;text-decoration:none;font-size:28px}.app-shell{margin-left:0}.topbar{height:60px;padding:9px 16px}.global-search{width:100%}.global-search button{display:none}.topbar-user{display:none}.quick-create summary{padding:9px 12px;white-space:nowrap}.mobile-bottom{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;height:65px;background:#fff;border-top:1px solid var(--line);z-index:70;padding-bottom:env(safe-area-inset-bottom)}.mobile-bottom a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none;color:var(--muted);font-size:10px;font-weight:700}.mobile-bottom a span{font-size:18px}.mobile-bottom a.active{color:var(--green)}.daily-layout{grid-template-columns:1fr}.client-summary{grid-template-columns:1fr 1fr}.booking-layout{grid-template-columns:1fr}.booking-form{grid-template-columns:1fr}.booking-form>div{grid-column:1!important}.booking-side{position:static}.form-page-head{align-items:flex-start;flex-direction:column}.form-page-head>.button{width:100%}.occupancy-grid,.exercise-grid{grid-template-columns:1fr}.week-board{margin:0 -16px;padding:0 16px 10px}.week-day{min-height:430px}.tabs{margin-left:-16px;margin-right:-16px;padding-left:12px}.list-toolbar{flex-wrap:wrap}.search-field{flex-basis:100%}.topbar+.page{padding-top:22px}}
@media(max-width:540px){.client-summary{grid-template-columns:1fr}.client-summary>div{border-right:0!important;border-bottom:1px solid var(--line)}.compact-stats{grid-template-columns:1fr 1fr}.compact-stats .stat-card{padding:14px}.today-panel,.attention-panel,.occupancy-card{padding:16px}.timeline-row{grid-template-columns:42px 9px 1fr}.profile-head .actions{display:grid;grid-template-columns:1fr 1fr}.data-table th:nth-child(2),.data-table td:nth-child(2),.data-table th:nth-child(4),.data-table td:nth-child(4){display:none}}

/* Karta klienta jako szybkie stanowisko pracy trenera */
.client-workbench{padding:20px;margin-bottom:16px;background:linear-gradient(135deg,#f2faf5,#fff 58%)}
.workbench-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:15px}.workbench-heading h2{font-size:21px;margin:0}.workbench-heading>span{max-width:390px;color:var(--muted);font-size:12px;text-align:right}
.client-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.client-action{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;min-height:78px;padding:13px;border:1px solid var(--line);border-radius:11px;background:#fff;text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s}.client-action:hover,.client-action:focus{border-color:#8dbda7;transform:translateY(-1px);box-shadow:0 8px 20px #123d2d12}.client-action>span{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:var(--mint);color:var(--green);font-size:11px;font-weight:850}.client-action>div{display:flex;flex-direction:column;min-width:0}.client-action strong{font-size:13px}.client-action small{color:var(--muted);font-size:10px;line-height:1.35}.client-action>b{color:var(--green);font-size:18px}.client-action.primary-action{background:var(--green);border-color:var(--green);color:#fff}.client-action.primary-action>span{background:#ffffff22;color:#fff}.client-action.primary-action small,.client-action.primary-action>b{color:#d7eee2}
.client-context{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:13px 15px;margin-bottom:14px;border-color:#b9dbc8;background:var(--mint);box-shadow:none}.profile-avatar.small{width:42px;height:42px;border-radius:11px;font-size:13px}.client-context>div{display:flex;flex-direction:column}.client-context small{color:var(--green);font-size:9px;font-weight:850;letter-spacing:1px}.client-context strong{font-size:16px}.client-context span{color:#547066;font-size:11px}.client-context>a{color:var(--green);font-size:11px;font-weight:800;text-decoration:none}
@media(max-width:1200px){.client-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.workbench-heading{align-items:flex-start;flex-direction:column;gap:6px}.workbench-heading>span{text-align:left}.client-action-grid{grid-template-columns:1fr}.client-context{grid-template-columns:auto 1fr}.client-context>a{grid-column:2}}

/* Szablony testów i ćwiczenia diagnostyczne */
.battery-section-heading{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:25px 0 12px}.battery-section-heading h2{font-size:20px;margin:0}.battery-section-heading p{margin:2px 0 0;color:var(--muted);font-size:12px}.battery-section-heading>a{color:var(--green);font-weight:800;text-decoration:none;font-size:12px}.battery-grid{margin-bottom:24px}.battery-card{display:flex;flex-direction:column}.battery-card>p{min-height:44px}.battery-exercises{display:flex;flex-direction:column;gap:5px;padding:12px;background:#f7f9f7;border-radius:9px;margin:4px 0 14px}.battery-exercises strong{font-size:11px;color:var(--green);text-transform:uppercase;letter-spacing:.6px}.battery-exercises span,.battery-exercises small{font-size:11px;color:#4f5f57}.battery-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}.battery-card>form{margin-top:10px}.text-action{width:100%;border:0;background:none;color:var(--green);font-weight:800;font-size:11px;cursor:pointer;padding:4px}.battery-detail-card{max-width:960px}.battery-item-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:13px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.battery-item-row>span{width:32px;height:32px;display:grid;place-items:center;background:var(--mint);color:var(--green);border-radius:9px;font-weight:850}.battery-item-row>div{display:flex;flex-direction:column}.battery-item-row small{color:var(--muted);font-size:11px}.battery-item-row p{margin:4px 0 0;color:#4f5f57;font-size:12px}.battery-item-row>div:last-child{text-align:right}.assessment-progress{display:grid;grid-template-columns:auto minmax(160px,1fr) auto;gap:18px;align-items:center;padding:15px 18px;margin-bottom:15px}.assessment-progress>div:first-child{display:flex;flex-direction:column}.assessment-progress small{color:var(--muted);font-size:10px}.assessment-progress strong{font-size:20px}.assessment-progress>a{color:var(--green);font-size:11px;font-weight:800;text-decoration:none}.assessment-checklist{max-width:1000px}.assessment-task{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 0;border-top:1px solid var(--line)}.assessment-task>span{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#edf0ee;color:var(--muted);font-weight:850}.assessment-task.done>span{background:var(--mint);color:var(--green)}.assessment-task>div{display:flex;flex-direction:column}.assessment-task small{color:var(--muted);font-size:11px}.task-result{text-align:right}.task-result strong{color:var(--green)}
@media(max-width:700px){.battery-item-row{grid-template-columns:34px 1fr}.battery-item-row>div:last-child{grid-column:2;text-align:left}.assessment-progress{grid-template-columns:auto 1fr}.assessment-progress>a{grid-column:1/-1}.assessment-task{grid-template-columns:34px 1fr}.assessment-task>.button,.assessment-task>.task-result{grid-column:2;width:100%;text-align:left}.battery-actions{grid-template-columns:1fr}}
.text-danger{border:0;background:none;color:var(--red);font-size:10px;font-weight:750;cursor:pointer;padding:4px 0}

/* Czytelne ekrany administracyjne */
.audit-filters{display:flex;gap:8px;padding:12px;margin-bottom:22px}.audit-filters .search-field{min-width:280px}.audit-filters select{border:1px solid #c9d4cd;background:#fff;border-radius:9px;padding:9px 34px 9px 11px}.audit-timeline{position:relative;display:grid;gap:14px;padding-left:22px}.audit-timeline:before{content:"";position:absolute;left:6px;top:20px;bottom:20px;width:2px;background:#d4dfd8}.audit-event{position:relative;padding:20px}.audit-marker{position:absolute;left:-23px;top:25px;width:14px;height:14px;border:3px solid var(--paper);border-radius:50%;background:var(--green)}.audit-event>header{display:flex;justify-content:space-between;gap:15px;margin-bottom:14px}.audit-event h2{font-size:17px;margin:3px 0}.audit-event header p{margin:0;color:var(--muted);font-size:12px}.audit-type{font-size:10px;color:var(--green);font-weight:850;text-transform:uppercase;letter-spacing:.7px}.audit-id{font-size:11px;color:var(--muted);background:#f1f4f1;padding:5px 8px;border-radius:6px;height:max-content}.change-table{border:1px solid var(--line);border-radius:9px;overflow:hidden}.change-head,.change-row{display:grid;grid-template-columns:minmax(130px,.7fr) 1fr 1fr;gap:0}.change-head{background:#f4f6f3;color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:800}.change-head span,.change-row>*{padding:8px 11px;border-right:1px solid var(--line)}.change-row{border-top:1px solid var(--line);font-size:12px}.change-row>*:last-child,.change-head>*:last-child{border:0}.change-row .before{color:#8b514d;background:#fffafa}.change-row .after{color:#186344;background:#f8fcf9}.audit-note{color:var(--muted);font-size:12px}.audit-meta{margin-top:10px}.audit-meta summary{cursor:pointer;color:var(--muted);font-size:11px}.audit-meta pre{white-space:pre-wrap;background:#f5f6f2;padding:10px;border-radius:7px;font-size:11px}

.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.service-card{display:grid;grid-template-columns:52px 1fr auto;gap:15px;align-items:center;padding:20px;text-decoration:none;transition:.15s ease}.service-card:hover{border-color:#a9cbbb;transform:translateY(-1px)}.service-icon{width:50px;height:50px;border-radius:13px;background:var(--mint);color:var(--green);font-size:20px;font-weight:900;display:grid;place-items:center}.service-main>div{display:flex;gap:10px;align-items:center}.service-main h2{font-size:18px;margin:0}.service-main p{margin:3px 0 11px;color:var(--muted);font-size:12px}.service-stats{display:flex;gap:18px;color:var(--muted);font-size:11px}.service-stats b{color:var(--ink)}.service-edit{color:var(--green);font-weight:750;font-size:12px}.info-banner,.versioning-banner,.template-intro{display:flex;align-items:flex-start;gap:12px;padding:15px 17px;margin-top:18px;background:#edf7f1;border:1px solid #cbe4d5;border-radius:11px}.info-banner>span,.versioning-banner>span,.template-intro>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:850;flex:none}.info-banner p,.versioning-banner p,.template-intro p{margin:2px 0 0;color:var(--muted);font-size:12px}

.availability-guide{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin-bottom:20px}.availability-guide>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--mint);color:var(--green);font-weight:850}.availability-guide>div{display:flex;flex-direction:column}.availability-guide small{color:var(--muted);font-size:10px}.availability-guide>b{color:#aab7b0;margin:0 5px}.availability-week{display:grid;gap:16px}.availability-trainer{overflow:hidden}.availability-trainer>header{display:flex;align-items:center;gap:11px;padding:15px 18px;background:#fafcfa;border-bottom:1px solid var(--line)}.availability-trainer h2{font-size:17px;margin:0}.availability-trainer header p{margin:0;color:var(--muted);font-size:11px}.availability-days{display:grid;grid-template-columns:repeat(7,1fr)}.availability-day{min-height:105px;padding:12px;border-right:1px solid var(--line)}.availability-day:last-child{border:0}.availability-day>div{display:flex;justify-content:space-between;gap:5px}.availability-day strong{font-size:11px}.availability-day a{color:var(--green);font-size:10px;text-decoration:none;font-weight:750}.availability-day>small{display:block;color:#a0aaa4;font-size:10px;margin-top:11px}.time-range{display:flex;flex-direction:column;margin-top:8px;padding:7px;background:var(--mint);color:var(--green-dark);border-radius:6px;font-size:11px;font-weight:750}.time-range a{margin-top:3px}.availability-record{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.availability-record>div:nth-child(2){display:flex;flex-direction:column}.availability-record small{color:var(--muted)}.wide-panel{max-width:none}.exception-panel{padding-bottom:16px}.exception-list{display:grid;gap:10px;margin-top:14px}.exception-card{display:grid;grid-template-columns:145px minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fbfcfb}.exception-card.exception-current{border-color:#9bcdb8;background:#f5fbf8}.exception-card.exception-past{opacity:.72}.exception-status{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.exception-kind,.exception-timing{display:inline-flex;width:max-content;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.exception-kind{background:#f9eaea;color:#a94337}.exception-available .exception-kind{background:var(--mint);color:var(--green)}.exception-timing{padding:0;color:var(--muted)}.exception-current .exception-timing{color:var(--green)}.exception-main{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(260px,1.3fr);gap:18px;align-items:center}.exception-main h3{margin:0 0 3px;font-size:16px}.exception-trainer{margin:0;color:var(--muted);font-size:12px}.exception-dates{display:flex;flex-direction:column;gap:3px}.exception-dates strong{font-size:16px;letter-spacing:.01em}.exception-dates small{font-size:12px;color:var(--muted)}.exception-actions{display:flex;align-items:center;gap:10px}.exception-actions .button{min-height:36px;padding:8px 12px}.exception-actions form{margin:0}.exception-actions button{min-height:36px}.week-absence{display:flex;flex-direction:column;gap:2px;padding:9px 10px;border:1px solid #ebc6bf;border-left:3px solid #c75a49;border-radius:8px;background:#fff8f6;color:#7d3027;text-decoration:none}.week-absence strong{font-size:12px}.week-absence small{font-size:10px;color:#85534c}

.document-columns{align-items:start}.versioning-banner{margin:0 0 20px}.version-family{border-top:1px solid var(--line);padding:15px 0}.version-family>header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px}.version-family>header>div{display:flex;flex-direction:column}.version-family header small{color:var(--muted);font-size:11px}.small-button{padding:6px 9px;font-size:11px}.version-list{border:1px solid var(--line);border-radius:9px;overflow:hidden}.version-row-wrap{border-bottom:1px solid var(--line)}.version-row-wrap:last-child{border:0}.version-row{border:0}.version-row summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#fbfcfb}.version-row summary span:first-child{display:flex;flex-direction:column}.version-row summary small{color:var(--muted);font-size:10px}.version-row .document-content{margin:0;border-radius:0}.version-activate{display:flex;justify-content:flex-end;padding:7px 12px;background:#fbfcfb}.version-activate button{margin:0}

.template-intro{margin:0 0 18px}.test-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.test-template-card{padding:18px;display:flex;flex-direction:column}.test-template-card header{display:flex;justify-content:space-between;gap:8px}.test-template-card h2{font-size:18px;margin:14px 0 4px}.test-template-card>p{font-size:12px;color:var(--muted);min-height:54px}.test-template-card dl{display:grid;gap:7px;margin:10px 0 16px}.test-template-card dl>div{display:flex;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:7px;font-size:11px}.test-template-card dt{color:var(--muted)}.test-template-card dd{margin:0;text-align:right;font-weight:700}.test-template-card form{margin-top:auto}.custom-test-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:13px 0;border-top:1px solid var(--line);text-decoration:none}.custom-test-row>div{display:flex;flex-direction:column}.custom-test-row small{color:var(--muted)}.custom-test-row>b{color:var(--green);font-size:11px}

@media(max-width:1100px){.test-template-grid{grid-template-columns:repeat(2,1fr)}.availability-days{grid-template-columns:repeat(4,1fr)}.availability-day{border-bottom:1px solid var(--line)}}
@media(max-width:850px){.audit-filters{flex-wrap:wrap}.audit-filters .search-field{min-width:100%;flex-basis:100%}.service-grid{grid-template-columns:1fr}.availability-guide{overflow:auto}.availability-guide>div{min-width:135px}.availability-days{grid-template-columns:repeat(2,1fr)}.exception-card{grid-template-columns:1fr;gap:12px}.exception-status{flex-direction:row;justify-content:space-between;align-items:center}.exception-main{grid-template-columns:1fr;gap:10px}.exception-actions{justify-content:flex-end;border-top:1px solid var(--line);padding-top:10px}.test-template-grid{grid-template-columns:1fr}.document-columns{grid-template-columns:1fr}.change-head,.change-row{grid-template-columns:110px 1fr 1fr}.change-row>*{word-break:break-word}.audit-event{padding:15px}}
@media(max-width:540px){.audit-filters select{width:100%}.service-card{grid-template-columns:45px 1fr}.service-edit{display:none}.availability-days{grid-template-columns:1fr}.availability-day{min-height:auto;border-right:0}.availability-record{grid-template-columns:46px 1fr}.availability-record .row-actions{grid-column:2}.exception-panel{padding:15px}.exception-card{padding:13px}.exception-dates strong{font-size:15px}.change-head{display:none}.change-row{grid-template-columns:1fr}.change-row>*{border-right:0;border-bottom:1px solid var(--line)}.change-row .before:before{content:"Przed: ";font-weight:800}.change-row .after:before{content:"Po: ";font-weight:800}.audit-event>header{flex-direction:column}.audit-id{width:max-content}}

/* Zaproszenie, onboarding i panel klienta */
.client-portal-header{height:72px;background:var(--green-dark);padding:0 max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between}.client-portal-header nav{display:flex;align-items:center;gap:18px;color:#fff}.client-portal-header nav>a{font-weight:750;text-decoration:none}.client-portal-header form{margin:0}.activation-page{max-width:1120px;margin:0 auto;padding:54px 24px;display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start}.activation-intro{padding-top:32px}.activation-intro h1{font-size:46px}.activation-intro>p{font-size:17px;color:var(--muted);max-width:430px}.activation-steps{list-style:none;padding:0;margin:34px 0;display:grid;gap:11px;counter-reset:steps}.activation-steps li{padding:12px 15px;border-left:3px solid var(--line);color:var(--muted);font-weight:750}.activation-steps li.active{border-color:var(--green);color:var(--green);background:var(--mint)}.activation-card{padding:28px}.activation-passwords{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:28px}.activation-passwords>div{display:grid;gap:6px}.activation-passwords input{width:100%;border:1px solid #c9d4cd;border-radius:9px;padding:11px 12px}.acceptance-document{padding:16px 0;border-top:1px solid var(--line)}.acceptance-document>div{display:flex;justify-content:space-between;gap:12px}.acceptance-document small{color:var(--muted)}.acceptance-document details{margin:10px 0}.acceptance-document summary{cursor:pointer;color:var(--green);font-size:12px;font-weight:800}.acceptance-check{display:flex;align-items:flex-start;gap:9px;padding:11px;border-radius:9px;background:#f5f8f6;font-weight:700}.acceptance-check input{margin-top:4px}.activation-submit{margin-top:18px}.full{width:100%}.privacy-note{color:var(--muted);font-size:11px;text-align:center}.auth-page{min-height:75vh;display:grid;place-items:center;padding:30px}.auth-card{max-width:520px;padding:40px;text-align:center}.brand-mark.large{width:52px;height:52px;font-size:24px}.auth-card h1{margin-top:18px}.auth-card .button{margin-top:22px}.onboarding-flow{padding:20px;margin-bottom:18px}.onboarding-flow-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.onboarding-flow-head h2{margin:0;font-size:19px}.onboarding-track{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.onboarding-step{display:flex;gap:9px;align-items:center;padding:10px;background:#f6f7f5;border-radius:9px;color:var(--muted)}.onboarding-step>span{width:28px;height:28px;flex:none;border-radius:50%;display:grid;place-items:center;background:#e4e8e5;font-weight:850}.onboarding-step>div{display:flex;flex-direction:column}.onboarding-step strong{font-size:11px}.onboarding-step small{font-size:9px}.onboarding-step.done{background:var(--mint);color:var(--green-dark)}.onboarding-step.done>span{background:var(--green);color:#fff}
.client-portal{max-width:1180px}.portal-welcome{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}.portal-welcome h1{font-size:38px}.portal-welcome p{color:var(--muted)}.portal-trainer{display:flex;flex-direction:column;text-align:right}.portal-trainer small{color:var(--muted)}.next-action{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:22px;margin-bottom:18px;background:linear-gradient(120deg,var(--green-dark),#176b4c);color:#fff;text-decoration:none}.next-action>span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#ffffff20;font-size:20px;font-weight:900}.next-action small{color:#a8d9bf;font-weight:800}.next-action strong{display:block;font-size:20px}.next-action p{margin:3px 0 0;color:#d5e9df}.next-action>b{white-space:nowrap}.portal-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.portal-summary article{padding:19px;display:flex;flex-direction:column}.portal-summary small,.portal-summary span{color:var(--muted)}.portal-summary strong{font-size:21px;margin:3px 0}.portal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.plan-client-head{display:flex;flex-direction:column;padding:12px;background:var(--mint);border-radius:9px;margin-bottom:9px}.plan-client-head span{font-size:12px;color:#527064}.portal-plan-day{border-top:1px solid var(--line)}.portal-plan-day summary{display:flex;justify-content:space-between;align-items:center;padding:14px 2px;cursor:pointer}.portal-plan-day summary>div{display:flex;flex-direction:column}.portal-plan-day summary small{color:var(--muted)}.portal-plan-day summary>span{color:var(--green);font-size:11px;font-weight:800}.portal-exercise{display:grid;grid-template-columns:30px 1fr;gap:10px;padding:12px;background:#f8faf8;border-radius:8px;margin-bottom:6px}.portal-exercise>span,.exercise-number{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;background:var(--mint);color:var(--green);font-weight:850}.portal-exercise>div{display:flex;flex-direction:column}.portal-exercise small{color:var(--muted)}.portal-exercise p{margin:3px 0 0;font-size:12px}.plan-days{display:grid;gap:16px}.plan-purpose{padding:18px;margin-bottom:18px}.plan-purpose small{color:var(--green);font-weight:850}.plan-purpose p{margin:4px 0}.plan-exercise-row{display:grid;grid-template-columns:34px minmax(180px,1fr) auto;gap:12px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.plan-exercise-row>div:nth-child(2){display:flex;flex-direction:column}.plan-exercise-row small{color:var(--muted)}.plan-exercise-row p{font-size:12px;margin:3px 0}.plan-targets{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.plan-targets span{background:#f1f5f2;border-radius:7px;padding:6px 8px;font-size:10px}.portal-questionnaire{padding-top:42px}
@media(max-width:850px){.activation-page{grid-template-columns:1fr;gap:12px;padding-top:24px}.activation-intro{padding-top:0}.activation-steps{display:none}.onboarding-track{grid-template-columns:1fr 1fr}.portal-summary,.portal-grid{grid-template-columns:1fr}.portal-grid .span-two{grid-column:auto}.client-portal-header{padding:0 18px}.portal-welcome{align-items:flex-start;flex-direction:column}.portal-trainer{text-align:left;margin-top:14px}}
@media(max-width:540px){.activation-passwords{grid-template-columns:1fr}.activation-card{padding:19px}.activation-intro h1{font-size:36px}.next-action{grid-template-columns:auto 1fr}.next-action>b{grid-column:2}.onboarding-track{grid-template-columns:1fr}.plan-exercise-row{grid-template-columns:30px 1fr}.plan-targets{grid-column:2;justify-content:flex-start}.client-portal-header nav>a{display:none}}

/* Panel klienta */
.portal-desktop-nav{height:100%}.portal-desktop-nav>a{height:100%;display:flex;align-items:center;padding:0 8px;border-bottom:3px solid transparent;color:#cfe0d7}.portal-desktop-nav>a.active{color:#fff;border-color:#8fe0ba}.portal-mobile-nav{display:none}.portal-inline-actions{display:flex;gap:8px;margin-top:13px}.portal-inline-actions a,.text-link{color:var(--green);font-weight:800;text-decoration:none;font-size:12px}.portal-inline-actions a{border:1px solid #bdd8c9;border-radius:8px;padding:7px 10px}.portal-inline-actions .danger-link,.danger-link{color:var(--red);border-color:#edc9c5}.portal-summary .text-link{margin-top:11px}.portal-doc-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;margin-top:18px}.portal-doc-summary h2{font-size:18px;margin:0}.portal-doc-summary p{color:var(--muted);margin:3px 0 0}.portal-progress-row{display:grid;grid-template-columns:minmax(120px,1.2fr) 110px 60px;gap:10px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.portal-progress-row>div{display:flex;flex-direction:column}.portal-progress-row small{color:var(--muted)}.portal-progress-row svg,.progress-detail-card svg{width:100%;height:40px}.portal-progress-row polyline,.progress-detail-card polyline{fill:none;stroke:var(--green);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.positive{color:var(--green)}.negative{color:var(--red)}.portal-booking-row{display:grid;grid-template-columns:58px 1fr auto;gap:14px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.portal-booking-row time{width:52px;height:55px;border-radius:10px;background:var(--mint);color:var(--green);display:flex;flex-direction:column;align-items:center;justify-content:center}.portal-booking-row time strong{font-size:20px;line-height:1}.portal-booking-row time span{text-transform:uppercase;font-size:10px;font-weight:800}.portal-booking-row>div:nth-child(2){display:flex;flex-direction:column}.portal-booking-row small{color:var(--muted)}
.portal-booking-row.reserved-slot{background:#f7faf8;margin:0 -10px;padding:14px 10px;border-radius:12px}.portal-booking-row.reserved-slot time{background:#edf1ef;color:#52645b}.portal-booking-coverage{display:inline-flex;width:max-content;margin-top:7px;padding:3px 8px;border-radius:999px;font-size:10px;font-weight:850}.portal-booking-coverage.confirmed{background:#dff2e6;color:#126747}.portal-booking-coverage.reserved{background:#e8f0fb;color:#376a9e}.portal-booking-explanation{margin-top:4px;font-size:11px}
.portal-booking-wizard{padding-top:42px}.wizard-progress{display:grid;grid-template-columns:repeat(3,1fr);margin:24px 0 16px}.wizard-progress>span{position:relative;border-top:4px solid #d9e0dc;padding-top:9px;color:var(--muted);font-weight:850}.wizard-progress>span.done{border-color:var(--green);color:var(--green)}.wizard-progress small{display:block;font-weight:650}.wizard-card,.cancel-card{padding:25px}.wizard-card h2{font-size:20px;margin:0 0 18px}.choice-list{display:grid;gap:9px}.choice-list>a{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:10px;text-decoration:none}.choice-list>a:hover{border-color:var(--green);background:#f7fbf8}.choice-list span,.choice-list b{color:var(--muted);font-size:12px}.choice-list b{color:var(--green)}.trainer-choice{display:grid;grid-template-columns:auto 1fr;gap:11px;align-items:center;margin-bottom:18px}.trainer-choice label{font-weight:800}.trainer-choice select{border:1px solid #c9d4cd;border-radius:9px;padding:11px}.slot-list{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:18px}.slot-list>a,.slot-list label{border:1px solid var(--line);border-radius:10px;padding:12px;display:flex;flex-direction:column;text-decoration:none;cursor:pointer}.slot-list>a:hover,.slot-list label:has(input:checked){border-color:var(--green);background:var(--mint)}.slot-list span,.slot-list small{color:var(--muted);font-size:11px}.slot-list strong{font-size:20px}.slot-list label input{position:absolute;opacity:0}.confirmation-summary{display:grid;gap:0;margin-bottom:16px}.confirmation-summary>div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.confirmation-summary small{color:var(--muted)}.policy-note{padding:15px;background:#f0f7f3;border-radius:10px;margin-bottom:18px}.policy-note p{margin:4px 0 0;color:var(--muted)}.booking-big{display:flex;flex-direction:column;margin-bottom:18px}.booking-big strong{font-size:25px}.booking-big span{color:var(--muted)}.cancel-effect{padding:18px;border-radius:10px}.cancel-effect p{margin:5px 0 0}.cancel-effect.free{background:var(--mint);color:var(--green-dark)}.cancel-effect.warning{background:#fff2df;color:#8a581d}.cancel-effect.charged{background:#fce9e7;color:#8b302b}.cancel-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}
.plan-portal-hero{background:linear-gradient(120deg,var(--green-dark),var(--green));color:#fff;padding:26px;margin-bottom:18px;display:flex;justify-content:space-between;gap:30px}.plan-portal-hero h2{font-size:28px;margin:3px 0}.plan-portal-hero p{margin:0;color:#d5e9df}.plan-portal-hero>div:last-child{display:flex;flex-direction:column;text-align:right}.plan-portal-hero small{color:#a8d9bf}.portal-large-empty{min-height:220px;justify-content:center}.portal-large-empty strong{font-size:20px}.progress-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:18px}.progress-detail-card{padding:20px}.progress-title{display:flex;justify-content:space-between;gap:12px}.progress-title small{color:var(--green);font-size:10px;text-transform:uppercase;font-weight:850}.progress-title h2{font-size:18px;margin:2px 0}.progress-title>b{font-size:21px}.progress-detail-card svg{height:90px;margin:13px 0;background:linear-gradient(#fff,#f4f8f5);border-radius:8px}.progress-values{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.progress-values>div{display:flex;flex-direction:column}.progress-values small,.progress-detail-card>p{color:var(--muted);font-size:11px}.status-warning{background:#fff0e1;color:#9a5b21;border-radius:20px;padding:7px 11px;font-weight:800}.portal-profile-form{grid-template-columns:1fr 1fr}.portal-profile-form>div:nth-child(n+3),.portal-profile-form>button{grid-column:1/-1}.notification-row{display:flex;gap:11px;align-items:center;padding:13px 0;border-top:1px solid var(--line);text-decoration:none}.notification-row>span{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:var(--mint);color:var(--green);font-weight:900}.notification-row>div{display:flex;flex-direction:column}.notification-row small{color:var(--muted)}.account-section{margin-top:18px}.account-section>h3{font-size:13px;text-transform:uppercase;color:var(--green);margin:22px 0 4px}.package-account{border-top:1px solid var(--line)}.package-account summary{display:flex;justify-content:space-between;gap:15px;padding:15px 2px;cursor:pointer}.package-account summary>div{display:flex;flex-direction:column}.package-account summary>div:last-child{text-align:right}.package-account summary small,.package-account summary span{color:var(--muted)}.ledger-list{padding:0 12px 10px;background:#f8faf8;border-radius:10px}
@media(max-width:850px){body:has(.client-portal-header){padding-bottom:72px}.client-portal-header{height:60px}.client-portal-header .portal-desktop-nav{display:none}.portal-mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;height:66px;background:#fff;border-top:1px solid var(--line);z-index:70;padding-bottom:env(safe-area-inset-bottom)}.portal-mobile-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none;color:var(--muted);font-size:10px;font-weight:750}.portal-mobile-nav a span{font-size:18px}.portal-mobile-nav a.active{color:var(--green)}.progress-card-grid{grid-template-columns:1fr}.portal-doc-summary,.plan-portal-hero{align-items:flex-start;flex-direction:column}.plan-portal-hero>div:last-child{text-align:left}.slot-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.portal-booking-row{grid-template-columns:52px 1fr}.portal-booking-row .portal-inline-actions{grid-column:2}.portal-progress-row{grid-template-columns:1fr 85px 52px}.portal-doc-summary .button{width:100%}.choice-list>a{grid-template-columns:1fr auto}.choice-list>a span{grid-row:2}.slot-list{grid-template-columns:1fr 1fr}.confirmation-summary>div{flex-direction:column;gap:3px}.cancel-actions{display:grid;grid-template-columns:1fr}.portal-profile-form{grid-template-columns:1fr}.portal-profile-form>*{grid-column:1!important}.progress-values{gap:4px}.progress-values strong{font-size:13px}.package-account summary{flex-direction:column}.package-account summary>div:last-child{text-align:left}.portal-welcome h1{font-size:31px}}

/* Kreator planów treningowych */
.builder-heading{align-items:flex-end}.builder-guide{display:flex;align-items:center;justify-content:center;gap:24px;padding:17px;margin-bottom:18px}.builder-guide>div{display:grid;grid-template-columns:34px 1fr;column-gap:10px;align-items:center}.builder-guide>div>span{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:white;font-weight:900}.builder-guide small{color:var(--muted)}.builder-guide>b{color:#9aada3}.phase-track{display:flex;gap:8px;margin-bottom:16px;overflow:auto}.phase-track article{min-width:190px;border-top:5px solid var(--phase);background:#fff;padding:12px 15px;border-radius:0 0 10px 10px;box-shadow:var(--shadow)}.phase-track span,.phase-track small{display:block}.phase-track span{font-weight:850}.phase-track small,.phase-track p{color:var(--muted);font-size:11px}.phase-track p{margin:5px 0 0}.week-nav,.client-week-nav{display:flex;gap:7px;overflow:auto;padding:3px 2px 12px;position:sticky;top:0;background:var(--bg);z-index:5}.week-nav a,.client-week-nav a{min-width:62px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;text-decoration:none;text-align:center;background:#fff;font-weight:850;color:var(--muted)}.week-nav a.filled,.client-week-nav a.filled{border-color:#8dc8aa;color:var(--green);background:var(--mint)}.week-nav small{display:block;font-size:8px}.builder-weeks{display:grid;gap:26px}.builder-week{scroll-margin-top:80px}.builder-week-heading,.client-week-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.builder-week-heading>div,.client-week-heading{display:flex;gap:11px;align-items:center}.builder-week-heading>div>span,.client-week-heading>span{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;background:var(--green-dark);color:#fff;font-size:20px;font-weight:900}.builder-week-heading h2,.client-week-heading h2{font-size:19px;margin:0}.builder-week-heading p{margin:0}.builder-week-heading>a,.workout-actions a,.block-heading>a,.empty-inline a,.empty-week a,.edit-exercise{color:var(--green);text-decoration:none;font-weight:800;font-size:12px}.workout-card{padding:0;margin-bottom:13px;overflow:hidden}.workout-card>header{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;background:#f8faf8;border-bottom:1px solid var(--line)}.workout-card h3{margin:2px 0;font-size:20px}.workout-card header small{color:var(--muted)}.workout-actions{display:flex;gap:13px}.workout-block{padding:15px 20px;border-bottom:1px solid var(--line)}.block-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.block-heading>div{display:flex;align-items:center;gap:10px}.block-heading>div>span{width:27px;height:27px;display:grid;place-items:center;background:var(--mint);color:var(--green);border-radius:8px;font-weight:900}.block-heading>div>div{display:flex;flex-direction:column}.block-heading small{color:var(--muted)}.builder-exercise{padding:13px 0 8px;border-top:1px dashed #dbe4de}.exercise-title{display:grid;grid-template-columns:34px 1fr;gap:10px;margin-bottom:8px}.exercise-title>span{width:32px;height:32px;display:grid;place-items:center;background:var(--green-dark);color:#fff;border-radius:8px;font-weight:900}.exercise-title>div{display:flex;flex-direction:column}.exercise-title small,.exercise-title p{color:var(--muted)}.exercise-title p{margin:3px 0;font-size:11px}.set-grid{display:grid;grid-template-columns:55px 1fr 1.2fr 1fr 80px;gap:8px;padding:7px 9px;background:#f8faf8;border-top:1px solid #edf1ee;font-size:11px}.set-grid-head{background:#edf4ef;color:var(--muted);font-weight:800}.edit-exercise{display:inline-block;margin-top:8px}.empty-inline,.empty-week{padding:18px;text-align:center;color:var(--muted)}.empty-week{border:1px dashed #bdcbc3;border-radius:12px;display:flex;gap:10px;align-items:center;justify-content:center}.empty-week>span{font-size:23px}.workout-copy{padding:11px 20px;background:#fbfcfb}.workout-copy form{display:flex;justify-content:flex-end;align-items:center;gap:10px}.workout-copy label{color:var(--muted);font-size:11px}.workout-copy select,.template-save input{border:1px solid var(--line);padding:8px;border-radius:8px}.template-save{margin-top:26px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.template-save>div{display:flex;flex-direction:column}.template-save small{color:var(--muted)}.template-save form{display:flex;gap:8px}.template-save input{min-width:270px}.set-editor-form{padding:22px}.prescribed-formset{margin-top:25px}.prescribed-set-card{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:13px 0;border-top:1px solid var(--line)}.set-card-number{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:var(--green);color:white;font-weight:900}.set-form-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.set-form-grid label{font-size:10px;color:var(--muted);font-weight:800}.set-form-grid input,.set-form-grid select{width:100%;padding:8px;border:1px solid var(--line);border-radius:7px}.set-form-grid .delete-field{display:flex;align-items:center;gap:5px}.exercise-library-row{grid-template-columns:1fr auto auto}.exercise-library-row>a{color:var(--green);font-size:11px;font-weight:800}.exercise-tags{display:flex;gap:4px;margin-top:5px}.exercise-tags span{padding:3px 6px;border-radius:10px;background:var(--mint);color:var(--green);font-size:9px}

/* Plan i realizacja po stronie klienta */
.workout-resume{margin-top:0}.client-week-nav{position:static}.client-plan-weeks{display:grid;gap:24px}.client-plan-weeks>section{scroll-margin-top:75px}.client-week-heading{justify-content:flex-start;margin:6px 0 10px}.client-week-heading small{color:var(--green);font-weight:850}.client-workout-card{padding:0;overflow:hidden}.client-workout-card>header{padding:18px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:#f8faf8;border-bottom:1px solid var(--line)}.client-workout-card h3{font-size:21px;margin:3px 0}.client-workout-card header small,.client-workout-card header p{color:var(--muted)}.client-workout-card header p{margin:4px 0}.workout-done{padding:8px 11px;background:var(--mint);color:var(--green);border-radius:20px;font-weight:850}.client-plan-block{padding:14px 18px;border-bottom:1px solid var(--line)}.client-block-heading,.client-plan-exercise{display:grid;grid-template-columns:31px 1fr;gap:9px}.client-block-heading>span,.client-plan-exercise>span{width:29px;height:29px;border-radius:8px;display:grid;place-items:center;background:var(--mint);color:var(--green);font-weight:900}.client-block-heading>div,.client-plan-exercise>div{display:flex;flex-direction:column}.client-block-heading small,.client-plan-exercise small{color:var(--muted)}.client-plan-exercise{padding:12px 0;border-top:1px dashed var(--line)}.client-plan-exercise p{font-size:11px;margin:4px 0}.client-prescription{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.client-prescription em{font-style:normal;background:#f2f5f3;padding:6px 8px;border-radius:7px;font-size:10px}.client-empty-week{margin-bottom:10px}.workout-run{max-width:920px}.workout-run-hero{display:flex;align-items:flex-end;justify-content:space-between;background:linear-gradient(125deg,var(--green-dark),var(--green));color:#fff;padding:24px;border-radius:14px;margin:12px 0 16px}.workout-run-hero h1{margin:3px 0}.workout-run-hero p{color:#d2e5db;margin:0}.workout-run-hero>span{background:#ffffff22;padding:8px 12px;border-radius:20px;font-weight:850}.workout-run-list{display:grid;gap:14px}.workout-run-exercise{padding:19px}.workout-run-exercise>header{display:grid;grid-template-columns:38px 1fr auto;gap:11px}.workout-run-exercise>header>span{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:var(--green);color:#fff;font-weight:900}.workout-run-exercise h2{font-size:21px;margin:2px 0}.workout-run-exercise header small,.workout-run-exercise header p{color:var(--muted)}.workout-run-exercise header p{margin:3px 0}.workout-run-exercise header>a{font-size:11px;color:var(--green);font-weight:800}.previous-results{margin:12px 0;background:#f1f7f3;padding:9px 12px;border-radius:9px}.previous-results summary{cursor:pointer;color:var(--green);font-weight:800;font-size:11px}.previous-results div{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px}.previous-results span{font-size:10px}.actual-set-labels,.actual-set{display:grid;grid-template-columns:45px 1fr 2.2fr;gap:10px;align-items:center}.actual-set-labels{margin-top:14px;padding:5px 8px;color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase}.actual-set{padding:11px 8px;border-top:1px solid var(--line)}.actual-set>b{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--green-dark);color:#fff}.prescribed-summary{display:flex;gap:5px;flex-wrap:wrap}.prescribed-summary span{font-size:10px;background:#f1f3f1;padding:4px 6px;border-radius:5px}.actual-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.actual-fields label,.workout-finish>label{font-size:9px;color:var(--muted);font-weight:800}.actual-fields input,.workout-finish input,.workout-finish textarea{width:100%;padding:10px;border:1px solid #bdcbc3;border-radius:8px;background:#fff}.actual-fields details{grid-column:1/-1}.actual-fields details summary{cursor:pointer;color:var(--green);font-size:10px;font-weight:800}.actual-fields details>div{display:grid;grid-template-columns:1fr 1fr 2fr;gap:7px;margin-top:7px}.workout-finish{margin-top:15px;padding:20px;display:grid;grid-template-columns:1.5fr .6fr 1fr;gap:14px;align-items:end}.workout-finish h2{margin:0}.workout-finish p{color:var(--muted);margin:4px 0}.workout-finish>div:last-child{display:grid;gap:7px}
@media(max-width:850px){.builder-guide{justify-content:flex-start;overflow:auto}.builder-guide>b{display:none}.set-form-grid{grid-template-columns:repeat(3,1fr)}.template-save{align-items:stretch;flex-direction:column}.template-save form{display:grid}.template-save input{min-width:0}.actual-set-labels,.actual-set{grid-template-columns:38px .8fr 1.5fr}.workout-finish{grid-template-columns:1fr 1fr}.workout-finish>div:first-child{grid-column:1/-1}}
@media(max-width:540px){.builder-heading .actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.builder-heading .actions form{grid-column:1/-1}.builder-heading .actions button{width:100%}.builder-guide{display:none}.week-nav{margin-left:-18px;margin-right:-18px;padding-left:18px}.workout-card>header{align-items:flex-start;flex-direction:column}.workout-actions{width:100%;justify-content:space-between}.workout-block{padding:14px}.set-grid{grid-template-columns:38px 1fr 1fr}.set-grid>:nth-child(4),.set-grid>:nth-child(5){display:none}.workout-copy form{align-items:stretch;flex-direction:column}.workout-copy select{width:100%}.set-form-grid{grid-template-columns:1fr 1fr}.client-workout-card>header{align-items:flex-start;flex-direction:column}.client-workout-card>header form,.client-workout-card>header button{width:100%}.workout-run-hero{align-items:flex-start;flex-direction:column;gap:14px}.workout-run-exercise{padding:14px}.workout-run-exercise>header{grid-template-columns:36px 1fr}.workout-run-exercise header>a{grid-column:2}.actual-set-labels{display:none}.actual-set{grid-template-columns:34px 1fr;padding:13px 0}.actual-fields{grid-column:1/-1}.prescribed-summary{grid-column:2}.actual-fields details>div{grid-template-columns:1fr 1fr}.actual-fields details>div label:last-child{grid-column:1/-1}.workout-finish{grid-template-columns:1fr}.workout-finish>div:first-child{grid-column:auto}}

/* Uproszczone układanie planu */
.plan-main-actions{flex-wrap:wrap}.advanced-plan-tools{margin:-6px 0 16px;background:#f5f8f6;border:1px solid var(--line);border-radius:10px;padding:10px 14px}.advanced-plan-tools summary{cursor:pointer;color:var(--green);font-size:11px;font-weight:850}.advanced-plan-tools>div{display:flex;gap:16px;align-items:center;padding-top:9px}.advanced-plan-tools a{font-weight:800;color:var(--green);text-decoration:none}.advanced-plan-tools span{color:var(--muted);font-size:11px}.week-add-actions{display:flex;gap:8px}.week-add-actions a{padding:7px 9px;border:1px solid #b9d4c5;border-radius:8px}.work-mode{display:inline-flex;width:max-content;padding:5px 9px;border-radius:16px;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.work-mode.with_trainer{background:#e5f1fb;color:#26628b}.work-mode.independent{background:#e7f6ed;color:var(--green)}.workout-actions{align-items:center}.workout-actions form{margin:0}.workout-actions details{position:relative}.workout-actions details summary{cursor:pointer;color:var(--green);font-size:11px;font-weight:800}.workout-actions details a{display:block;position:absolute;right:0;top:25px;min-width:155px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);z-index:4}.trainer-session-note{max-width:150px;color:#26628b;background:#e5f1fb;padding:8px 11px;border-radius:9px;font-size:10px;font-weight:850;text-align:center}.quick-plan-page{max-width:820px}.quick-plan-heading{display:grid;grid-template-columns:55px 1fr;gap:16px;align-items:center;margin:17px 0}.quick-plan-heading>span{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:var(--green);color:#fff;font-size:24px;font-weight:900}.quick-plan-heading h1{margin:2px 0}.quick-plan-heading p{margin:0;color:var(--muted)}.quick-plan-heading .eyebrow{color:var(--green)}.quick-plan-form{padding:24px}.quick-fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.quick-field{display:flex;flex-direction:column;gap:5px}.quick-field label{font-size:11px;font-weight:850;color:#334b40}.quick-field input,.quick-field select,.quick-field textarea{width:100%;padding:11px 12px;border:1px solid #bdcbc3;border-radius:9px;background:#fff}.quick-field small{color:var(--muted);font-size:9px}.quick-field .errorlist{color:var(--red)}.field-work_mode,.field-name,.field-notes,.field-exercise,.field-new_exercise_name{grid-column:1/-1}.field-work_mode>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}.field-work_mode>div label{display:flex;align-items:center;gap:8px;padding:13px;border:1px solid var(--line);border-radius:9px;cursor:pointer}.field-work_mode>div label:has(input:checked){border-color:var(--green);background:var(--mint);color:var(--green)}.field-work_mode input{width:auto}.library-hint{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;margin:20px 0 4px;padding:13px;background:#f3f8f5;border-radius:10px;text-decoration:none}.library-hint>span{width:36px;height:36px;border-radius:9px;display:grid;place-items:center;background:var(--green);color:#fff}.library-hint>div{display:flex;flex-direction:column}.library-hint small{color:var(--muted)}.library-hint>b{color:var(--green);font-size:11px}
@media(max-width:650px){.plan-main-actions{display:grid!important;grid-template-columns:1fr;width:100%}.plan-main-actions>*{width:100%;text-align:center}.week-add-actions{flex-direction:column}.advanced-plan-tools>div{align-items:flex-start;flex-direction:column;gap:4px}.quick-plan-form{padding:17px}.quick-fields{grid-template-columns:1fr}.quick-field{grid-column:1/-1}.field-work_mode>div{grid-template-columns:1fr}.library-hint{grid-template-columns:36px 1fr}.library-hint>b{grid-column:2}.workout-actions{align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.workout-actions form{grid-column:1/-1}.workout-actions button,.workout-actions>a{width:100%;text-align:center}}

/* Jednoekranowy kreator planu */
.visual-builder{max-width:none}.publish-form{display:flex;align-items:end;gap:8px}.publish-form label{display:grid;gap:3px;font-size:9px;color:var(--muted)}.publish-form input,.bulk-editor input,.bulk-editor select{border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff}.safe-publish-banner{padding:17px;display:flex;justify-content:space-between;align-items:center;border-left:5px solid var(--green)}.safe-publish-banner p{margin:3px 0;color:var(--muted)}.plan-diff{padding:15px;margin-bottom:14px}.plan-diff summary,.bulk-editor summary{cursor:pointer;font-weight:850}.plan-diff summary b{float:right;color:var(--green)}.plan-diff p{font-size:11px}.bulk-editor{padding:14px;margin-bottom:13px}.bulk-editor form{display:grid;grid-template-columns:1.2fr repeat(4,1fr) auto;gap:9px;align-items:end;margin-top:13px}.bulk-editor label{display:grid;gap:4px;font-size:10px;font-weight:800}.drag-hint{color:var(--muted);font-size:11px}.visual-week-board{display:flex;gap:14px;overflow-x:auto;padding:4px 2px 20px;scroll-snap-type:x proximity}.visual-week{width:320px;min-width:320px;background:#edf2ef;border:1px solid #dce5df;border-radius:14px;padding:10px;scroll-snap-align:start;transition:.18s}.visual-week.drag-over{background:#dff2e7;border-color:var(--green);transform:translateY(-3px)}.visual-week>header{display:flex;justify-content:space-between;align-items:center;padding:4px 3px 10px}.visual-week>header>div{display:grid;grid-template-columns:35px 1fr;align-items:center}.visual-week>header>div>span{grid-row:1/3;width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:var(--green-dark);color:#fff;font-weight:900}.visual-week>header small{color:var(--muted)}.visual-week>header details{position:relative}.visual-week>header summary{cursor:pointer;font-weight:900}.visual-week>header details form{position:absolute;z-index:8;right:0;top:23px;width:220px;padding:12px;background:#fff;border-radius:10px;box-shadow:var(--shadow)}.visual-week>header details label{display:grid;gap:5px;font-size:10px}.visual-week>header select{padding:7px}.visual-workout{background:#fff;border-radius:11px;margin-bottom:10px;border-top:5px solid #3b82a0;box-shadow:0 3px 10px #1835280c;overflow:hidden}.visual-workout.independent{border-top-color:var(--green)}.visual-workout.dragging{opacity:.45}.visual-workout>header{padding:12px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line)}.visual-workout>header>div{display:flex;flex-direction:column;gap:3px}.visual-workout>header button{border:0;background:none;color:var(--green);font-size:9px;font-weight:850;cursor:pointer}.inline-exercises{padding:4px 10px}.inline-exercise{display:grid;grid-template-columns:27px 1fr auto;gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid #edf1ee;text-decoration:none;color:inherit}.inline-exercise>span{width:25px;height:25px;display:grid;place-items:center;border-radius:7px;background:#edf4ef;color:var(--green);font-weight:900}.inline-exercise>div{display:flex;flex-direction:column}.inline-exercise small{color:var(--muted)}.inline-exercise>b{font-size:9px;color:var(--green)}.inline-add{padding:10px}.inline-add summary,.add-workout summary{cursor:pointer;color:var(--green);font-size:11px;font-weight:850}.inline-add form{display:grid;gap:8px;padding-top:10px}.inline-add label{display:grid;gap:3px;font-size:9px;font-weight:800}.inline-add input,.inline-add select,.add-workout input{width:100%;padding:8px;border:1px solid var(--line);border-radius:7px}.inline-add form>div{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.add-workout{padding:10px;background:#fff8;border:1px dashed #aac3b5;border-radius:10px}.add-workout form{display:grid;gap:7px;padding-top:9px;font-size:10px}.add-workout label{display:flex;align-items:center;gap:5px}.add-workout label input{width:auto}.import-upload{padding:20px;margin-bottom:15px}.import-upload form{display:flex;align-items:end;gap:12px}.import-upload label{display:grid;gap:5px}.mapping-card{padding:18px;margin-bottom:15px}.mapping-row{display:grid;grid-template-columns:1fr 1.4fr;gap:15px;align-items:center;padding:9px 0;border-top:1px solid var(--line)}.mapping-row select{padding:9px;border:1px solid var(--line);border-radius:8px}.import-confirm{position:sticky;bottom:10px;margin-top:14px;padding:13px 16px;background:var(--green-dark);color:#fff;border-radius:11px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow)}
@media(max-width:850px){.bulk-editor form{grid-template-columns:repeat(3,1fr)}.visual-week{min-width:290px;width:290px}}
@media(max-width:540px){.publish-form{display:grid}.safe-publish-banner{align-items:flex-start;flex-direction:column;gap:8px}.bulk-editor form{grid-template-columns:1fr 1fr}.visual-week-board{margin-left:-18px;margin-right:-18px;padding-left:18px}.import-upload form{align-items:stretch;flex-direction:column}.mapping-row{grid-template-columns:1fr}.import-confirm{gap:9px;flex-direction:column;align-items:stretch}.import-confirm button{width:100%}}

/* Szybki rejestr treningu */
.readiness-card{padding:22px;margin-bottom:15px}.readiness-card>div p{color:var(--muted)}.readiness-card form{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.readiness-card label{display:grid;gap:5px;font-size:11px;font-weight:800}.readiness-card label span{font-size:8px;color:var(--muted)}.readiness-card .pain-location{grid-column:1/-2}.readiness-strip{padding:12px 16px;border-radius:10px;margin-bottom:14px;display:flex;justify-content:space-between;gap:10px}.readiness-strip.green{background:#e4f5ea;color:#176b4c}.readiness-strip.yellow{background:#fff2d8;color:#8a5a12}.readiness-strip.red{background:#fbe5e3;color:#8b302b}.quick-set{padding:14px 0;border-top:1px solid var(--line);transition:.15s}.quick-set.is-complete{background:#f0f8f3;margin:0 -10px;padding:14px 10px;border-radius:10px}.quick-set-top{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.quick-set-top>span{font-size:10px;color:var(--muted)}.planned-pill{padding:5px 8px;border-radius:8px;background:#edf2ef;font-size:10px}.quick-set-fields{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;margin-top:10px}.quick-set-fields label,.set-more label{display:grid;gap:4px;font-size:9px;font-weight:850;color:var(--muted)}.quick-set-fields input,.set-more input{font-size:20px;padding:12px;border:2px solid #b9c9c0;border-radius:9px;width:100%;color:#172f24;font-weight:850}.weight-control{display:grid;grid-template-columns:auto 1fr auto}.weight-control button{border:0;background:var(--green-dark);color:#fff;font-weight:900;padding:0 11px}.weight-control button:first-child{border-radius:9px 0 0 9px}.weight-control button:last-child{border-radius:0 9px 9px 0}.weight-control input{border-radius:0}.quick-set-actions{display:flex;justify-content:space-between;align-items:center;margin-top:9px}.quick-set-actions>button{border:0;background:none;color:var(--green);font-size:10px;font-weight:850;cursor:pointer}.complete-set{cursor:pointer}.complete-set input{position:absolute;opacity:0}.complete-set span{display:block;padding:9px 13px;border-radius:9px;background:#e7efe9;color:var(--green);font-size:11px;font-weight:900}.complete-set input:checked+span{background:var(--green);color:#fff}.set-more{margin-top:9px}.set-more summary{cursor:pointer;color:var(--green);font-size:10px;font-weight:800}.set-more>div{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:8px}.set-more input{font-size:13px;padding:9px}.rest-timer{position:fixed;z-index:100;right:20px;bottom:20px;padding:12px 16px;border-radius:14px;background:var(--green-dark);color:#fff;box-shadow:0 10px 35px #10281c55;display:grid;grid-template-columns:auto auto auto;gap:10px;align-items:center}.rest-timer[hidden]{display:none}.rest-timer strong{font-size:24px}.rest-timer button{border:1px solid #ffffff55;background:none;color:#fff;border-radius:7px;padding:6px}
@media(max-width:650px){.readiness-card form{grid-template-columns:1fr 1fr}.readiness-card .pain-location{grid-column:1/-1}.readiness-strip{flex-direction:column}.quick-set-fields{grid-template-columns:.8fr 1.3fr}.quick-set-actions{align-items:stretch;flex-direction:column;gap:4px}.set-more>div{grid-template-columns:1fr 1fr}.rest-timer{left:15px;right:15px;bottom:78px;justify-content:space-between}}
.training-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:17px}.training-kpis article{padding:18px;display:flex;flex-direction:column}.training-kpis small,.training-kpis span{color:var(--muted)}.training-kpis strong{font-size:27px;color:var(--green-dark)}.progress-subheading{margin-top:25px}@media(max-width:540px){.training-kpis{grid-template-columns:1fr}.training-kpis article{display:grid;grid-template-columns:1fr auto;align-items:center}.training-kpis article span{grid-column:1/-1}}
.library-bulk{display:grid;grid-template-columns:1fr minmax(220px,350px) auto;gap:10px;align-items:center}.library-bulk>div{display:flex;flex-direction:column}.library-bulk>div span{color:var(--muted);font-size:10px}.library-bulk>input{padding:10px;border:1px solid var(--line);border-radius:8px}.exercise-library-panel{grid-column:1/-1}.exercise-library-row{grid-template-columns:25px 1fr auto auto}.exercise-library-row>input{width:17px;height:17px}@media(max-width:600px){.library-bulk{grid-template-columns:1fr}.exercise-library-panel{grid-column:1}.exercise-library-row{grid-template-columns:25px 1fr auto}.exercise-library-row>.status{display:none}}

.exercise-filter-bar{display:grid;grid-template-columns:minmax(250px,1.5fr) repeat(4,minmax(145px,.7fr)) auto auto;gap:10px;align-items:end;padding:16px;margin-bottom:14px}.exercise-filter-bar label{display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:10px;font-weight:800}.exercise-filter-bar input,.exercise-filter-bar select,.bulk-tag-controls input{width:100%;height:40px;border:1px solid #c9d4cd;border-radius:9px;background:#fff;padding:0 11px}.exercise-filter-bar>a{height:40px;display:flex;align-items:center;color:var(--green);font-size:12px;font-weight:800;text-decoration:none}.exercise-search{position:relative}.exercise-search>span{position:absolute;left:12px;bottom:10px;font-size:16px}.exercise-search input{padding-left:34px}.exercise-results-heading{align-items:center}.bulk-tag-controls{display:flex;gap:8px}.bulk-tag-controls input{min-width:220px}.exercise-list-head,.exercise-list-row{display:grid;grid-template-columns:24px minmax(280px,1.5fr) minmax(190px,.75fr) 85px 55px;gap:14px;align-items:center}.exercise-list-head{padding:0 10px 8px;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.exercise-list-row{min-height:76px;padding:11px 10px;border-top:1px solid var(--line)}.exercise-list-row>input{width:17px;height:17px;margin:0}.exercise-name,.exercise-category{min-width:0;display:flex;flex-direction:column;gap:2px}.exercise-name strong,.exercise-name small,.exercise-category strong,.exercise-category small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exercise-name small,.exercise-category small{color:var(--muted);font-size:11px}.exercise-category strong{font-size:12px}.exercise-list-row>a{color:var(--green);font-size:11px;font-weight:800}.pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.pagination a{color:var(--green);font-size:12px;font-weight:800;text-decoration:none}.pagination a:last-child{text-align:right}.pagination strong{font-size:12px;color:var(--muted)}
@media(max-width:1100px){.exercise-filter-bar{grid-template-columns:repeat(3,1fr)}.exercise-search{grid-column:span 2}.exercise-list-head,.exercise-list-row{grid-template-columns:24px minmax(220px,1fr) minmax(160px,.7fr) 75px 50px}}
@media(max-width:700px){.exercise-filter-bar{grid-template-columns:1fr 1fr}.exercise-search{grid-column:1/-1}.exercise-results-heading{align-items:flex-start;flex-direction:column}.bulk-tag-controls{width:100%}.bulk-tag-controls input{min-width:0}.exercise-list-head{display:none}.exercise-list-row{grid-template-columns:22px 1fr auto;gap:10px}.exercise-category{grid-column:2}.exercise-list-row>.status{grid-column:3;grid-row:1}.exercise-list-row>a{grid-column:3;grid-row:2}.exercise-filter-bar button{width:100%}}
.workout-menu{position:relative}.workout-menu>summary{cursor:pointer;list-style:none;color:var(--green);font-weight:900;padding:5px 8px}.workout-menu>div{position:absolute;z-index:10;right:0;top:28px;width:210px;padding:7px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.workout-menu form{margin:0}.workout-menu form button{display:block;width:100%;padding:9px;text-align:left;border-radius:7px}.workout-menu form button:hover{background:var(--mint)}.workout-menu form .danger-action{color:#a63b35}.workout-menu form .danger-action:hover{background:#fce9e7}
/* Package scheduling wizard */
.package-schedule-form>section,.schedule-summary{display:flex;gap:14px;align-items:flex-start;margin-top:6px}.step-number{display:grid;place-items:center;min-width:34px;height:34px;border-radius:50%;background:#176b4c;color:#fff;font-weight:800}.package-schedule-form h2{margin:0 0 4px}.package-schedule-form p{margin:0}.schedule-slots{display:grid;gap:10px}.schedule-slot{display:grid;grid-template-columns:minmax(180px,1fr) minmax(130px,.6fr) auto;gap:10px;align-items:center}.schedule-slot select,.schedule-slot input{width:100%}.schedule-summary{padding:18px;border-radius:14px;background:#eef8f3}.package-schedule-page .series-preview{max-height:460px;overflow:auto}@media(max-width:650px){.schedule-slot{grid-template-columns:1fr 1fr}.schedule-slot .remove-slot{grid-column:1/-1}.package-schedule-form .form-grid{grid-template-columns:1fr}}

/* Ergonomia codziennej pracy i urządzenia dotykowe */
.button,.primary,.danger-button{min-height:44px}.form-field{display:grid;gap:6px}.form-field>label{font-weight:750}.form-field input:not([type=checkbox]):not([type=radio]),.form-field select,.form-field textarea{min-height:46px}.checkbox-row{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}.checkbox-row input,.availability-bulk input[type=checkbox]{width:22px!important;height:22px!important;flex:none}.required-mark{color:var(--red);margin-left:4px}.field-error{color:var(--red);font-weight:700}.form-advanced{border:1px solid var(--line);border-radius:11px;overflow:hidden}.form-advanced>summary{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:50px;padding:12px 14px;cursor:pointer;font-weight:800;background:#f8faf8}.form-advanced>summary span{color:var(--green);font-size:11px}.form-advanced>div{display:grid;gap:16px;padding:16px}.permission-tools{display:flex!important;flex-direction:row;gap:8px}.form-kind-role #id_permissions{display:grid;grid-template-columns:1fr 1fr;gap:5px}.form-kind-role #id_permissions label{display:flex;align-items:center;gap:9px;min-height:44px;padding:7px 9px;border:1px solid var(--line);border-radius:8px}.form-kind-role #id_permissions input{width:22px;height:22px}.booking-form.client-first>.form-field:not(.field-client),.booking-form.client-first>.sticky-form-actions{display:none}.client-flow-cards,.mobile-day-agenda{display:none}.availability-bulk{padding:0;margin-bottom:16px}.availability-bulk>summary{display:flex;justify-content:space-between;gap:10px;padding:16px 18px;cursor:pointer;font-weight:850}.availability-bulk>summary span{color:var(--muted);font-size:11px}.availability-bulk-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:0 18px 18px}.availability-bulk-grid form{display:grid;gap:11px;padding:15px;border:1px solid var(--line);border-radius:10px}.availability-bulk-grid h3{margin:0}.availability-bulk-grid label{display:grid;gap:5px;font-weight:750}.availability-bulk-grid select,.availability-bulk-grid input[type=time]{min-height:44px;border:1px solid #c9d4cd;border-radius:8px;padding:8px;background:#fff}.availability-bulk-grid fieldset{display:flex;flex-wrap:wrap;gap:7px;border:0;padding:0;margin:0}.availability-bulk-grid fieldset label{display:flex;align-items:center;gap:4px;min-height:44px;padding:5px 8px;border:1px solid var(--line);border-radius:8px}.availability-bulk-grid legend{font-weight:750;margin-bottom:5px}.time-pair{display:grid;grid-template-columns:1fr 1fr;gap:9px}.touch-move-workout{display:grid;grid-template-columns:1fr auto;gap:6px;padding:6px;border-bottom:1px solid var(--line)}.touch-move-workout select{min-width:0;border:1px solid var(--line);border-radius:7px;padding:7px}.touch-move-workout button{min-height:40px!important}.free-slot{color:#82aa95}.row-actions a,.row-actions button{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:850px){.client-flow-table{display:none}.client-flow-cards{display:grid;gap:12px}.client-flow-card{padding:16px;border-left:5px solid var(--green)}.client-flow-card.flow-studio{border-left-color:#d77736}.client-flow-card.flow-client{border-left-color:#7399c9}.client-flow-card.flow-scheduled{border-left-color:#8d77bd}.client-flow-card>.responsibility{margin:12px 0}.mobile-flow-stage,.mobile-flow-next{display:grid;gap:3px;padding:11px 0;border-top:1px solid var(--line)}.mobile-flow-stage small,.mobile-flow-next small{font-size:9px;color:var(--muted);font-weight:850;letter-spacing:.08em}.client-flow-card>.primary{margin-top:8px;width:100%}.week-board{display:grid;grid-template-columns:1fr;overflow:visible;margin:0;padding:0;gap:10px}.week-day{min-height:0}.week-events{min-height:70px}.week-empty{padding:18px}.day-link{min-height:44px;display:flex;align-items:center}.mobile-day-agenda{display:grid;gap:9px;padding:12px}.desktop-day-grid,.day-board>.table-scroll{display:none}.mobile-agenda-event{display:grid;grid-template-columns:58px 1fr;gap:10px;align-items:center;min-height:64px;padding:10px 12px;border:1px solid var(--line);border-left:4px solid var(--green);border-radius:10px;text-decoration:none;background:#fff}.mobile-agenda-event time{font-size:17px;font-weight:900;color:var(--green)}.mobile-agenda-event strong,.mobile-agenda-event small{display:block}.mobile-agenda-event small{color:var(--muted)}.availability-bulk-grid{grid-template-columns:1fr}.availability-bulk>summary span{display:none}.availability-bulk-grid fieldset{display:grid;grid-template-columns:repeat(4,1fr)}.visual-week-board{display:grid;grid-template-columns:1fr;overflow:visible;margin:0;padding:0}.visual-week{width:100%;min-width:0}.drag-hint:after{content:" Na telefonie użyj menu ••• i przycisku Przenieś."}.form-kind-role #id_permissions{grid-template-columns:1fr}.sticky-mobile-actions,.sticky-form-actions{position:sticky;bottom:65px;z-index:12;margin:10px -12px -12px;padding:10px 12px;background:#fff;border-top:1px solid var(--line);box-shadow:0 -8px 20px #18352812}.sticky-mobile-actions .button,.sticky-mobile-actions .primary,.sticky-form-actions .button,.sticky-form-actions .primary{flex:1}}
@media(pointer:coarse){summary,.quick-create a,.main-nav a,.tabs a,.segmented a,.inline-exercise,.inline-add summary,.add-workout summary{min-height:44px}.free-slot{color:var(--green);font-size:22px}.workout-menu>summary{min-width:44px;min-height:44px;display:grid;place-items:center}}

/* Plan treningowy: harmonogram, kreator, prowadzenie i progres */
.plan-workspace{max-width:none}.plan-workspace-head,.trainer-workout-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:14px 0 18px}.plan-workspace-head h1,.trainer-workout-head h1{margin:5px 0 2px}.plan-workspace-head p,.trainer-workout-head p{margin:0;color:var(--muted)}.plan-kicker{display:flex;align-items:center;gap:9px;color:var(--green);font-size:10px;font-weight:900;letter-spacing:.09em}.plan-primary-actions{display:flex;align-items:center;gap:9px}.plan-primary-actions form{margin:0}.plan-primary-actions .primary{min-height:45px}.more-actions form button{width:100%;border:0;background:#fff;text-align:left;padding:9px 11px;cursor:pointer;font-weight:650}.more-actions form button:hover{background:var(--mint);color:var(--green)}
.plan-view-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:18px;overflow:auto}.plan-view-tabs a{display:flex;align-items:center;gap:7px;padding:12px 15px;border-bottom:3px solid transparent;text-decoration:none;color:var(--muted);font-weight:800;white-space:nowrap}.plan-view-tabs a.active{color:var(--green);border-bottom-color:var(--green)}.plan-view-tabs span{min-width:23px;padding:2px 6px;border-radius:12px;background:#e9eeeb;text-align:center;font-size:10px}.plan-view-tabs a.active span{background:var(--mint)}
.plan-schedule-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.plan-schedule-card{overflow:hidden}.plan-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:20px}.plan-section-head h2{margin:2px 0}.plan-section-head p:not(.eyebrow){margin:4px 0 0;color:var(--muted)}.plan-agenda-row{display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:15px;align-items:center;padding:15px 20px;border-top:1px solid var(--line)}.plan-agenda-row.today{background:#f0f8f3;box-shadow:inset 4px 0 var(--green)}.plan-agenda-row time{display:flex;flex-direction:column;align-items:center}.plan-agenda-row time small{color:var(--green);font-size:9px;font-weight:900;text-transform:uppercase}.plan-agenda-row time strong{font-size:20px;line-height:1.15}.plan-agenda-row time span{color:var(--muted);font-size:11px}.plan-agenda-copy h3{margin:4px 0 1px}.plan-agenda-copy p{margin:0;color:var(--muted);font-size:12px}.plan-agenda-actions{display:flex;align-items:center;gap:8px}.plan-agenda-actions form{margin:0}.schedule-state{display:inline-flex;padding:6px 9px;border-radius:14px;background:#edf0ee;color:var(--muted);font-size:10px;font-weight:850}.schedule-state.completed{background:var(--mint);color:var(--green)}.schedule-state.started{background:#e8f0fb;color:#376a9e}.schedule-state.overdue{background:#fff0e1;color:#a7561d}.plan-side-stack{display:grid;gap:14px;position:sticky;top:86px}.plan-next-card{padding:20px;border-radius:14px;background:linear-gradient(140deg,var(--green-dark),var(--green));color:#fff;box-shadow:var(--shadow)}.plan-next-card .eyebrow,.plan-next-card p{color:#d7e9df}.plan-next-card h2{font-size:24px;margin:6px 0}.plan-next-card form{margin-top:14px}.plan-next-card .primary{background:#fff;color:var(--green-dark)}.plan-package-summary{display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.plan-package-summary>div{padding:15px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}.plan-package-summary>div:nth-child(2n){border-right:0}.plan-package-summary>div:nth-last-child(-n+2){border-bottom:0}.plan-package-summary small{color:var(--muted);font-size:10px}.plan-package-summary strong{font-size:20px}
.workout-template-switcher{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.workout-template-switcher>div{display:flex;gap:7px;overflow:auto}.workout-template-switcher>div>a{display:grid;grid-template-columns:9px auto;column-gap:8px;align-items:center;min-width:145px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;text-decoration:none}.workout-template-switcher>div>a.active{border-color:var(--green);box-shadow:0 0 0 2px #176b4c18}.workout-template-switcher a strong{font-size:13px}.workout-template-switcher a small{grid-column:2;color:var(--muted);font-size:9px}.mode-dot{width:8px;height:28px;border-radius:6px;background:var(--blue);grid-row:1/3}.mode-dot.independent{background:var(--green)}.plan-builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:17px;align-items:start}.plan-builder-main{display:grid;gap:14px}.selected-workout-head{display:grid;grid-template-columns:8px 1fr auto;gap:14px;align-items:center;padding:17px}.workout-mode-line{width:8px;align-self:stretch;border-radius:8px;background:var(--blue)}.workout-mode-line.independent{background:var(--green)}.selected-workout-head h2{margin:2px 0}.selected-workout-head p{margin:0;color:var(--muted)}.selected-workout-head .eyebrow{color:var(--green)}.workout-quick-menu{position:relative}.workout-quick-menu>div{position:absolute;right:0;top:44px;z-index:8;width:245px;padding:7px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.workout-quick-menu form{margin:0}.workout-quick-menu button{width:100%;padding:9px;border:0;background:#fff;text-align:left;cursor:pointer}.workout-block-list{display:grid;gap:13px}.workout-builder-block{overflow:hidden}.workout-builder-block>header{display:grid;grid-template-columns:35px 1fr;gap:11px;align-items:center;padding:15px 17px;background:#f1f5f2;border-bottom:1px solid var(--line)}.workout-builder-block>header>span{width:33px;height:33px;display:grid;place-items:center;border-radius:9px;background:#fff;color:var(--green);font-weight:900}.workout-builder-block h2{margin:1px 0;font-size:18px}.workout-builder-block p{margin:0;color:var(--muted);font-size:11px}.builder-exercise-row{display:grid;grid-template-columns:minmax(190px,.75fr) minmax(390px,1.5fr) auto;gap:12px;align-items:start;padding:14px 16px;border-top:1px solid #edf1ee}.builder-exercise-row:first-child{border-top:0}.builder-exercise-title{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:center;padding-top:17px}.builder-exercise-title>span{width:29px;height:29px;display:grid;place-items:center;border-radius:8px;background:var(--mint);color:var(--green);font-size:11px;font-weight:900}.builder-exercise-title>div{display:flex;flex-direction:column;min-width:0}.builder-exercise-title strong,.builder-exercise-title small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.builder-exercise-title small{font-size:10px;color:var(--muted)}.inline-prescription{display:grid;grid-template-columns:60px 95px 86px 60px auto;gap:7px;align-items:end}.inline-prescription label{display:grid;gap:3px;font-size:9px;color:var(--muted);font-weight:800}.inline-prescription input,.inline-prescription select,.add-builder-block input,.add-builder-block select,.quick-add-prescription input,.quick-add-prescription select{width:100%;padding:8px;border:1px solid #c6d1ca;border-radius:8px;background:#fff}.inline-prescription details{grid-column:1/-1}.inline-prescription details summary{cursor:pointer;color:var(--green);font-size:10px;font-weight:800}.inline-prescription details>div{display:grid;grid-template-columns:110px 100px 100px 1fr;gap:7px;margin-top:7px}.inline-prescription .apply-future{grid-column:1/5;display:flex;align-items:center;gap:6px;color:var(--muted);font-size:10px}.inline-prescription .apply-future input{width:auto}.save-inline{min-height:36px}.delete-inline{padding-top:19px}.delete-inline button{border:0;background:none;color:var(--red);font-size:10px;font-weight:800;cursor:pointer;padding:8px}.read-only-prescription{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding-top:14px}.read-only-prescription>*{padding:5px 8px;border-radius:7px;background:#f0f4f1;font-size:11px}.add-to-block{width:100%;padding:12px;border:0;border-top:1px dashed #c7d3cb;background:#fbfcfb;color:var(--green);font-weight:800;cursor:pointer}.add-builder-block{padding:14px}.add-builder-block>summary{cursor:pointer;color:var(--green);font-weight:850}.add-builder-block form{display:grid;grid-template-columns:1fr 200px auto;gap:9px;align-items:end;padding-top:12px}.add-builder-block label,.quick-add-prescription label{display:grid;gap:4px;font-size:10px;font-weight:800;color:var(--muted)}
.exercise-picker{position:sticky;top:86px;padding:16px;max-height:calc(100vh - 105px);overflow:auto}.exercise-picker-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:11px}.exercise-picker-head h2{margin:2px 0}.exercise-picker-head>span{padding:4px 8px;border-radius:12px;background:var(--mint);color:var(--green);font-size:9px;font-weight:900}.exercise-search{display:flex;align-items:center;border:1px solid #c6d1ca;border-radius:9px;background:#fff;padding-left:10px}.exercise-search input{width:100%;border:0;outline:0;padding:10px;background:transparent}.exercise-filter-row{display:flex;gap:5px;overflow:auto;margin:9px 0}.exercise-filter-row button{border:1px solid var(--line);border-radius:13px;background:#fff;padding:5px 8px;font-size:9px;white-space:nowrap;cursor:pointer}.exercise-filter-row button.active{border-color:var(--green);background:var(--mint);color:var(--green)}.exercise-picker-results{display:grid;border-top:1px solid var(--line);max-height:330px;overflow:auto}.exercise-pick{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 2px;border:0;border-bottom:1px solid #edf1ee;background:#fff;text-align:left;cursor:pointer;color:var(--ink)}.exercise-pick:hover{background:#f5faf7}.exercise-pick>span:nth-child(2){display:flex;flex-direction:column;min-width:0}.exercise-pick strong,.exercise-pick small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.exercise-pick small{color:var(--muted);font-size:9px}.exercise-pick b{color:var(--green);font-size:9px}.exercise-video{width:36px;height:34px;display:grid;place-items:center;border-radius:8px;background:var(--mint);color:var(--green)}.quick-add-prescription{display:grid;gap:9px;padding-top:12px;border-top:1px solid var(--line)}.quick-add-prescription>div:not(.chosen-exercise){display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.quick-add-prescription details summary{cursor:pointer;color:var(--green);font-size:10px;font-weight:800}.quick-add-prescription details>div{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding-top:7px}.chosen-exercise{position:relative;padding:10px;border-radius:9px;background:var(--mint);color:var(--green)}.chosen-exercise small,.chosen-exercise strong{display:block}.chosen-exercise button{position:absolute;right:6px;top:6px;border:0;background:none;color:var(--green);font-size:18px;cursor:pointer}.plan-publish-bar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:17px;padding:17px;border-left:5px solid var(--green)}.plan-publish-bar p{margin:3px 0;color:var(--muted)}
.progress-intro{padding:7px 2px 15px}.progress-intro h2{font-size:24px;margin:3px 0}.progress-intro p:not(.eyebrow){margin:0;color:var(--muted)}.plan-progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.exercise-progress-card{padding:18px}.exercise-progress-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.exercise-progress-card h2{margin:0}.exercise-progress-card header p{margin:3px 0;color:var(--muted);font-size:11px}.progress-change{padding:5px 8px;border-radius:14px;background:var(--mint);color:var(--green);font-size:11px;font-weight:900}.progress-change.negative{background:#fae9e7;color:var(--red)}.progress-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.progress-numbers>div{display:flex;flex-direction:column;padding:9px;border-radius:8px;background:#f3f6f4}.progress-numbers small{color:var(--muted);font-size:9px}.mini-progress-chart{height:120px;display:flex;align-items:flex-end;gap:9px;padding:10px 8px 0;border-bottom:1px solid var(--line)}.mini-progress-chart>div{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px}.mini-progress-chart span{display:block;width:min(25px,70%);min-height:8px;border-radius:6px 6px 0 0;background:linear-gradient(var(--green),#58ad83)}.mini-progress-chart small{color:var(--muted);font-size:8px;white-space:nowrap}
.trainer-workout-page{max-width:none}.live-save-state{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px}.live-save-state>span{width:9px;height:9px;border-radius:50%;background:#4fac7d;box-shadow:0 0 0 5px var(--mint)}.workout-progress-bar{padding:13px 16px;margin-bottom:14px;border-radius:11px;background:#fff;border:1px solid var(--line)}.workout-progress-bar>div:first-child{display:flex;justify-content:space-between;margin-bottom:7px;font-size:11px}.workout-progress-bar>div:last-child{height:8px;border-radius:8px;background:#e7ece9;overflow:hidden}.workout-progress-bar>div:last-child span{display:block;height:100%;background:var(--green)}.trainer-workout-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.trainer-live-list{display:grid;gap:22px}.trainer-live-block>header{display:grid;grid-template-columns:35px 1fr;gap:10px;align-items:center;margin-bottom:9px}.trainer-live-block>header>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--green-dark);color:#fff;font-weight:900}.trainer-live-block>header h2{margin:1px 0}.trainer-live-block>header p{margin:0;color:var(--muted);font-size:10px}.live-exercise-card{overflow:hidden;margin-bottom:12px}.live-exercise-card>header{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line)}.live-exercise-number{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:var(--mint);color:var(--green);font-weight:900}.live-exercise-card h2{margin:0;font-size:20px}.live-exercise-card header small,.live-exercise-card header p{display:block;margin:2px 0;color:var(--muted);font-size:10px}.live-exercise-card header>a{font-size:10px;color:var(--green);font-weight:800}.live-context{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.live-context>div{display:flex;flex-direction:column;padding:10px 14px;background:#f7f9f7}.live-context small{color:var(--muted);font-size:8px;font-weight:900}.live-context strong{font-size:12px}.live-set-head,.live-set-row{display:grid;grid-template-columns:45px 120px 120px minmax(260px,1fr) 42px;gap:9px;align-items:center}.live-set-head{padding:7px 14px;background:#eef3f0;color:var(--muted);font-size:8px;font-weight:900;text-transform:uppercase}.live-set-row{padding:11px 14px;border-top:1px solid #edf1ee}.live-set-row.complete{background:#f2faf5}.live-set-row>b{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--green-dark);color:#fff}.previous-set,.planned-set{font-size:11px;color:var(--muted)}.planned-set{font-weight:800;color:var(--ink)}.actual-set-controls{display:grid;grid-template-columns:1.5fr .7fr;gap:8px}.actual-set-controls label,.live-set-more label,.session-finish-card label{display:grid;gap:3px;color:var(--muted);font-size:9px;font-weight:850}.actual-set-controls input,.live-set-more input,.session-finish-card input,.session-finish-card textarea{width:100%;padding:10px;border:1px solid #bdcbc3;border-radius:8px;background:#fff}.complete-live-set input{position:absolute;opacity:0}.complete-live-set span,.completed-check{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;border:1px solid #bdcbc3;background:#fff;color:#9aa69f;cursor:pointer;font-weight:900}.complete-live-set input:checked+span,.completed-check{border-color:var(--green);background:var(--green);color:#fff}.live-set-more{grid-column:2/-1}.live-set-more summary{cursor:pointer;color:var(--green);font-size:9px;font-weight:800}.live-set-more>div{display:grid;grid-template-columns:repeat(5,1fr) 2fr;gap:7px;padding-top:8px}.trainer-session-side{position:sticky;top:86px}.session-finish-card,.completed-session-card{padding:19px}.session-finish-card h2,.completed-session-card h2{margin:3px 0}.session-finish-card p,.completed-session-card p{color:var(--muted);font-size:11px}.session-finish-card{display:grid;gap:10px}.completed-session-card{text-align:center}.completed-session-card>span{width:48px;height:48px;margin:auto;display:grid;place-items:center;border-radius:50%;background:var(--mint);color:var(--green);font-size:24px}.post-workout-decisions{margin-top:18px;overflow:hidden}.post-workout-decisions>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;align-items:center;padding:13px 20px;border-top:1px solid var(--line)}.post-workout-decisions article>div:first-child{display:flex;flex-direction:column}.post-workout-decisions small{color:var(--muted)}.post-workout-decisions form{display:flex;gap:6px}.post-workout-decisions button{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}.post-workout-decisions button.primary{background:var(--green);color:#fff;border-color:var(--green)}
.live-session-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 15px;padding:12px 15px;border:1px solid #d8e5de;border-radius:13px;background:#f5faf7}.live-session-toolbar>div{display:flex;flex-direction:column;gap:2px}.live-session-toolbar small{color:var(--muted);font-size:10px}.live-exercise-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.live-exercise-actions button,.live-exercise-actions a{min-height:32px;padding:6px 8px;border:1px solid #bed2c7;border-radius:8px;background:#fff;color:var(--green-dark);font-size:9px;font-weight:850;text-decoration:none;cursor:pointer}.live-exercise-actions button.quiet{border-color:#e1e8e4;color:var(--muted)}.live-empty-session{display:grid;justify-items:center;gap:7px;padding:35px;text-align:center}.live-empty-session p{margin:0 0 7px;color:var(--muted)}.live-replace-dialog{width:min(560px,calc(100vw - 24px));max-height:min(760px,calc(100dvh - 24px));padding:0;border:0;border-radius:22px;background:#fff;box-shadow:0 30px 90px #071b145c}.live-replace-dialog::backdrop{background:#071b1485;backdrop-filter:blur(4px)}.live-replace-head{display:flex;justify-content:space-between;gap:14px;padding:20px 21px 12px}.live-replace-head small{color:var(--green);font-size:8px;font-weight:900;letter-spacing:.09em}.live-replace-head h2{margin:3px 0}.live-replace-head p{margin:0;color:var(--muted);font-size:10px}.live-replace-head>button{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:19px;cursor:pointer}.live-replace-dialog>.exercise-search{margin:0 20px 10px}.live-replace-results{display:grid;gap:5px;max-height:330px;padding:0 20px 12px;overflow:auto}.live-replace-results>button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:#f8faf9;text-align:left;cursor:pointer}.live-replace-results>button span{display:flex;flex-direction:column}.live-replace-results>button small,.live-replace-results>p{color:var(--muted);font-size:10px}.live-replace-results>button b{color:var(--green);font-size:10px}.live-replace-choice{margin:0 20px 12px;padding:10px 12px;border-radius:10px;background:var(--mint)}.live-replace-choice small{display:block;color:var(--green);font-size:8px;font-weight:900}.live-replace-dialog>.primary{width:calc(100% - 40px);margin:0 20px 20px}.live-replace-dialog>.primary:disabled{opacity:.4}
@media(max-width:1100px){.plan-builder-layout{grid-template-columns:minmax(0,1fr) 285px}.builder-exercise-row{grid-template-columns:1fr}.builder-exercise-title{padding-top:0}.delete-inline{padding-top:0}.inline-prescription{grid-template-columns:60px 95px 86px 60px auto}.trainer-workout-layout{grid-template-columns:1fr}.trainer-session-side{position:static}.session-finish-card{grid-template-columns:1fr 1fr}.session-finish-card>p,.session-finish-card>h2,.session-finish-card>.eyebrow{grid-column:1/-1}}
@media(max-width:850px){.plan-workspace-head,.trainer-workout-head{align-items:flex-start;flex-direction:column}.plan-primary-actions{width:100%}.plan-primary-actions>*{flex:1}.plan-primary-actions .button,.plan-primary-actions button{width:100%}.plan-schedule-layout,.plan-builder-layout{grid-template-columns:1fr}.plan-side-stack,.exercise-picker{position:static;max-height:none}.exercise-picker-results{max-height:390px}.plan-progress-grid{grid-template-columns:1fr}.builder-exercise-row{grid-template-columns:1fr}.live-set-head{display:none}.live-set-row{grid-template-columns:38px 1fr 1fr;align-items:start}.live-set-row>b{grid-row:1/3}.previous-set,.planned-set{padding-top:8px}.actual-set-controls{grid-column:2/4}.complete-live-set,.completed-check{grid-column:3;grid-row:1;justify-self:end}.live-set-more{grid-column:2/4}.post-workout-decisions>article{grid-template-columns:1fr}.post-workout-decisions form{flex-wrap:wrap}}
@media(max-width:560px){.plan-workspace-head h1,.trainer-workout-head h1{font-size:27px}.plan-primary-actions{display:grid;grid-template-columns:1fr}.workout-template-switcher{align-items:stretch;flex-direction:column}.workout-template-switcher>.button{width:100%;text-align:center}.plan-agenda-row{grid-template-columns:62px 1fr;padding:13px}.plan-agenda-actions{grid-column:1/-1;justify-content:flex-end}.plan-agenda-actions .button{flex:1;text-align:center}.selected-workout-head{grid-template-columns:7px 1fr}.workout-quick-menu{grid-column:2}.inline-prescription{grid-template-columns:1fr 1fr}.inline-prescription details,.inline-prescription .apply-future{grid-column:1/-1}.inline-prescription details>div{grid-template-columns:1fr 1fr}.inline-prescription details .wide{grid-column:1/-1}.save-inline{grid-column:1/-1}.add-builder-block form{grid-template-columns:1fr}.plan-publish-bar{align-items:stretch;flex-direction:column}.publish-form{display:grid;width:100%}.live-context{grid-template-columns:1fr}.live-set-row{grid-template-columns:34px 1fr}.previous-set,.planned-set{grid-column:2}.actual-set-controls{grid-column:1/-1}.complete-live-set,.completed-check{grid-column:2;grid-row:1;justify-self:end}.live-set-more{grid-column:1/-1}.live-set-more>div{grid-template-columns:1fr 1fr}.live-set-more .wide{grid-column:1/-1}.session-finish-card{grid-template-columns:1fr}.session-finish-card>*{grid-column:1!important}.post-workout-decisions form{display:grid}.post-workout-decisions button{width:100%}}
@media(max-width:560px){.live-session-toolbar{align-items:stretch;flex-direction:column}.live-session-toolbar .button{text-align:center}.live-exercise-card>header{grid-template-columns:38px minmax(0,1fr)}.live-exercise-actions{grid-column:1/-1;justify-content:stretch}.live-exercise-actions button,.live-exercise-actions a{flex:1;min-height:40px;text-align:center}.live-replace-dialog{border-radius:20px 20px 0 0;margin:auto 0 0;width:100%;max-width:none;max-height:88dvh}.live-replace-results{max-height:42dvh}}
@media(max-width:540px){.availability-bulk-grid{padding:0 10px 10px}.availability-bulk-grid fieldset{grid-template-columns:repeat(3,1fr)}.flow-filter-bar button{min-height:70px}.list-toolbar select,.list-toolbar button{min-height:44px}.client-create-form{padding:18px}.form-advanced>summary{align-items:flex-start;flex-direction:column}}

/* StudioFlow Mobile OS — premium, dotykowy interfejs */
:root{--paper:#f3f6f3;--card:#fff;--line:#dbe4de;--green:#126747;--green-dark:#0b3528;--mint:#e4f4eb;--ink:#14231c;--muted:#66756d;--shadow:0 14px 44px rgba(21,55,39,.075);--shadow-strong:0 24px 70px rgba(10,40,28,.18)}
body{font-size:15px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,a,input,select,textarea{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid rgba(18,103,71,.2);outline-offset:2px}
.skip-link{position:fixed;left:12px;top:-80px;z-index:200;background:#fff;color:var(--green-dark);padding:12px 16px;border-radius:10px;box-shadow:var(--shadow-strong);font-weight:800}.skip-link:focus{top:12px}
.card,.login-card,.stat-card{border-radius:17px;box-shadow:var(--shadow)}
.button,.primary,.danger-button{min-height:46px;border-radius:12px;padding:10px 16px}
.primary{box-shadow:0 8px 22px rgba(18,103,71,.16)}
.primary:hover{background:#0d573c}
.page{padding-top:30px}
.eyebrow{letter-spacing:1.35px}
.mobile-top-menu,.mobile-top-brand,.mobile-search-toggle,.mobile-create-label,.mobile-edit-prescription,.exercise-picker-close,.exercise-picker-grabber,.mobile-live-controller,.client-workout-controller,.plan-publish-toggle{display:none}
.quick-create-title{padding:8px 11px 5px;color:var(--muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}

@media (min-width:851px) and (max-width:1180px){
  .sidebar{width:216px;padding-left:12px;padding-right:12px}.app-shell{margin-left:216px}.page{padding:26px 24px 48px}.topbar{padding-left:24px;padding-right:24px}
  .client-flow-table{display:none}.client-flow-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.client-flow-card{padding:17px;border-left:5px solid var(--green)}.client-flow-card.flow-studio{border-left-color:#d77736}.client-flow-card.flow-client{border-left-color:#7399c9}.client-flow-card.flow-scheduled{border-left-color:#8d77bd}.client-flow-card>.responsibility{margin:12px 0}.mobile-flow-stage,.mobile-flow-next{display:grid;gap:3px;padding:11px 0;border-top:1px solid var(--line)}.mobile-flow-stage small,.mobile-flow-next small{font-size:9px;color:var(--muted);font-weight:850;letter-spacing:.08em}.client-flow-card>.primary{margin-top:8px;width:100%}
  .dashboard-page .daily-layout{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr)}.dashboard-main-column .compact-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.occupancy-grid{grid-template-columns:repeat(2,1fr)}
  .week-board{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(250px,31vw);overflow-x:auto;scroll-snap-type:x mandatory}.week-day{scroll-snap-align:start}
  .plan-builder-layout{grid-template-columns:minmax(0,1fr) 285px}.builder-exercise-row{grid-template-columns:1fr}.builder-exercise-title{padding-top:0}.inline-prescription{grid-template-columns:repeat(4,minmax(70px,1fr)) auto}.delete-inline{padding-top:0}
}

@media (max-width:850px){
  html{scroll-padding-top:76px}body{padding-bottom:calc(78px + env(safe-area-inset-bottom));background:#f5f7f5}body.sheet-open{overflow:hidden}
  .app-shell{min-height:100dvh}.page{padding:18px 14px 34px;max-width:100%}.narrow{max-width:100%}
  h1{font-size:29px;letter-spacing:-.75px}h2{letter-spacing:-.2px}.muted{font-size:13px;line-height:1.45}
  .card,.stat-card{border-radius:18px;box-shadow:0 8px 26px rgba(20,52,37,.055)}
  .topbar{height:64px;padding:8px 12px;gap:9px;background:rgba(11,53,40,.97);border-bottom:0;color:#fff;box-shadow:0 8px 30px rgba(8,35,26,.15)}
  .mobile-top-menu,.mobile-search-toggle{display:grid;place-items:center;width:44px;height:44px;flex:none;border:0;border-radius:13px;background:#ffffff12;color:#fff;text-decoration:none;font-size:21px}
  .mobile-top-brand{display:flex;align-items:center;gap:8px;color:#fff;text-decoration:none;font-weight:750;margin-right:auto}.mobile-top-brand .brand-mark{width:34px;height:34px;border-radius:11px}.mobile-top-brand b{color:#91dfb9}
  .global-search{position:fixed;z-index:82;left:12px;right:12px;top:70px;width:auto;min-height:54px;padding-left:14px;border-radius:16px;box-shadow:var(--shadow-strong);transform:translateY(-14px);opacity:0;visibility:hidden;transition:.18s ease}.global-search.mobile-open{transform:none;opacity:1;visibility:visible}.global-search input{font-size:16px}.global-search button{display:block;min-height:46px}
  .quick-create{position:fixed;z-index:76;right:16px;bottom:calc(82px + env(safe-area-inset-bottom));margin:0}.quick-create summary{width:56px;height:56px;display:grid;place-items:center;padding:0;border-radius:18px;background:var(--green);box-shadow:0 16px 34px rgba(14,80,55,.3);font-size:27px}.desktop-create-label{display:none}.mobile-create-label{display:block}.quick-create>div{top:auto;bottom:66px;right:0;width:min(280px,calc(100vw - 28px));border-radius:17px;padding:8px;box-shadow:var(--shadow-strong)}.quick-create a{min-height:48px;display:flex;align-items:center;border-radius:11px}.topbar-user{display:none}
  .sidebar:target{width:min(355px,92vw);padding:24px 18px calc(20px + env(safe-area-inset-bottom));box-shadow:30px 0 80px rgba(0,0,0,.35)}.sidebar:target .main-nav a,.sidebar:target .nav-group summary{min-height:48px;border-radius:12px}.mobile-menu-close{width:44px;height:44px;display:grid;place-items:center;top:12px;right:12px}
  .mobile-bottom{height:calc(70px + env(safe-area-inset-bottom));padding:6px 6px env(safe-area-inset-bottom);background:rgba(255,255,255,.96);backdrop-filter:blur(18px);box-shadow:0 -10px 35px rgba(18,49,35,.08)}.mobile-bottom a,.portal-mobile-nav a{min-width:0;gap:3px;border-radius:13px;font-size:10px}.mobile-bottom a span,.portal-mobile-nav a span{width:36px;height:29px;display:grid;place-items:center;border-radius:11px;font-size:19px}.mobile-bottom a.active span,.portal-mobile-nav a.active span{background:var(--mint)}
  .page-heading,.welcome-row,.schedule-head,.profile-head,.form-page-head{gap:14px;margin-bottom:18px}.page-heading>.primary,.page-heading>.button,.form-page-head>.button{width:100%}.actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.actions>*{width:100%!important}
  .form-card,.questionnaire-form{padding:18px;margin-top:14px}.stack{gap:16px}.stack input:not([type=checkbox]):not([type=radio]),.stack select,.stack textarea,.question-block input,.question-block select,.question-block textarea,.form-field input:not([type=checkbox]):not([type=radio]),.form-field select,.form-field textarea{min-height:50px;font-size:16px;border-radius:12px;padding:12px}.form-advanced{border-radius:14px}.form-advanced>summary{min-height:54px;background:#f4f7f5}.sticky-mobile-actions,.sticky-form-actions{bottom:calc(70px + env(safe-area-inset-bottom));margin-left:-8px;margin-right:-8px;padding:10px 8px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);backdrop-filter:blur(14px);box-shadow:0 -14px 32px rgba(18,49,35,.09)}

  /* Każda tabela staje się czytelną listą kart — bez przewijania w bok. */
  .table-card:not(.client-flow-table),.result-card{overflow:visible;margin-left:0;margin-right:0;background:transparent;border:0;box-shadow:none}
  .table-card:not(.client-flow-table) .data-table,.result-card .data-table,.exercise-card .data-table{display:block;min-width:0!important;width:100%}
  .table-card:not(.client-flow-table) .data-table thead,.result-card .data-table thead,.exercise-card .data-table thead{display:none}
  .table-card:not(.client-flow-table) .data-table tbody,.result-card .data-table tbody,.exercise-card .data-table tbody{display:grid;gap:11px}
  .table-card:not(.client-flow-table) .data-table tr,.result-card .data-table tr,.exercise-card .data-table tr{display:block;padding:10px 14px;background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow)}
  .table-card:not(.client-flow-table) .data-table td,.result-card .data-table td,.exercise-card .data-table td{width:100%!important;display:grid!important;grid-template-columns:minmax(92px,34%) 1fr;gap:12px;align-items:start;padding:10px 0;border:0;border-bottom:1px solid #edf1ee;text-align:left;white-space:normal}
  .table-card:not(.client-flow-table) .data-table td:last-child,.result-card .data-table td:last-child,.exercise-card .data-table td:last-child{border-bottom:0}.data-table td::before{content:attr(data-label);color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.data-table td[colspan]::before,.data-table td[data-label=""]::before{display:none}.data-table td[colspan]{display:block!important}.data-table td .actions,.data-table td .row-actions{justify-content:flex-start}

  /* Pulpit właściciela i trenera */
  .dashboard-page .welcome-row{padding:5px 2px}.dashboard-page .welcome-row h1{font-size:27px}.dashboard-page .welcome-row .actions{width:100%}
  .daily-layout{gap:13px}.dashboard-main-column{gap:13px}.dashboard-main-column .compact-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.today-panel,.attention-panel,.occupancy-card{padding:16px}.today-panel{order:1}.attention-panel{order:2}.panel-heading{margin-bottom:10px}.panel-heading h2{font-size:18px}
  .timeline-row{grid-template-columns:48px 10px minmax(0,1fr);min-height:68px;padding:12px 0}.timeline-row .status{grid-column:3;width:max-content}.timeline-row small{white-space:normal}.attention-list>a{min-height:62px}.compact-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compact-stats .stat-card{display:flex;flex-direction:column;align-items:flex-start;min-height:142px;padding:15px}.compact-stats .stat-icon{width:38px;height:38px}.compact-stats .stat-card strong{font-size:24px}.compact-stats .stat-link{margin-top:auto}.occupancy-grid{grid-template-columns:1fr}.progress-row{grid-template-columns:100px 1fr 34px}

  /* Klienci: status i odpowiedzialność są ważniejsze niż tabela. */
  .flow-filter-bar{display:flex;gap:7px;overflow-x:auto;padding:6px;background:transparent;border:0;box-shadow:none;scroll-snap-type:x proximity}.flow-filter-bar button{min-width:145px;min-height:72px;flex:0 0 auto;border:1px solid var(--line)!important;border-radius:15px!important;background:#fff;scroll-snap-align:start}.flow-filter-bar button strong{font-size:20px}.list-toolbar{padding:0}.search-field{min-height:50px;border-radius:14px}.client-flow-cards{gap:11px}.client-flow-card{padding:16px;border-radius:18px}.client-flow-card .person-cell{align-items:flex-start}.client-flow-card>.responsibility{margin:10px 0}.mobile-flow-stage,.mobile-flow-next{padding:10px 0}.client-flow-card>.primary{min-height:50px;border-radius:13px}

  /* Grafik: na telefonie przesuwamy dni jak karty zamiast ściskać tydzień. */
  .view-toolbar{gap:10px}.segmented{width:100%;padding:4px;border-radius:13px}.segmented a{flex:1;text-align:center;min-height:42px;display:grid;place-items:center}.trainer-filter{width:100%}.trainer-filter summary{min-height:48px;display:flex;align-items:center;border-radius:13px}.trainer-filter form{position:fixed;left:12px;right:12px;top:75px;width:auto;border-radius:17px;max-height:70dvh;overflow:auto}.legend{font-size:11px;overflow:auto;white-space:nowrap}.week-board{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:min(88vw,360px);overflow-x:auto;margin:0 -14px;padding:2px 14px 12px;gap:10px;scroll-snap-type:x mandatory}.week-day{scroll-snap-align:center;min-height:430px;border-radius:17px}.week-day>header{min-height:62px}.mobile-day-agenda{padding:10px}.mobile-agenda-event{min-height:70px;border-radius:14px;padding:11px 12px}

  /* Pakiety, dostępność, ustawienia i formularze zarządcze. */
  .package-hero{padding:16px;border-radius:20px}.package-hero>div{padding:14px 4px}.package-hero strong{font-size:28px}.package-row,.offer-row,.staff-row,.manage-row,.assessment-row,.ledger-row{min-height:60px;align-items:flex-start}.row-actions{flex-wrap:wrap;justify-content:flex-end}.row-actions a,.row-actions button{padding:8px}.availability-bulk{border-radius:17px}.availability-bulk>summary{min-height:58px;padding:16px}.availability-bulk-grid form{border-radius:15px}.time-pair input,.availability-bulk-grid select{font-size:16px}.management-grid .card{padding:17px}.audit-row summary{padding:16px;align-items:flex-start}.audit-values{padding:0 16px 16px}.audit-values pre{font-size:12px;max-height:260px;overflow:auto}

  /* Kreator planu: plan w treści, biblioteka jako pełny panel od dołu. */
  body.route-training_plan_detail .quick-create{display:none}.plan-workspace{padding-bottom:105px}.plan-workspace>.back{margin-bottom:12px}.plan-workspace-head{gap:14px;margin-bottom:14px}.plan-workspace-head h1{font-size:27px}.plan-workspace-head p{font-size:12px}.plan-primary-actions{display:grid;grid-template-columns:1fr!important;gap:8px}.plan-view-tabs{position:sticky;z-index:14;top:64px;margin:0 -14px 14px;padding:0 12px;background:rgba(245,247,245,.96);backdrop-filter:blur(12px)}.plan-view-tabs a{min-height:52px;padding:11px 13px}.plan-section-head{padding:17px}.plan-section-head p:not(.eyebrow){font-size:12px}.plan-agenda-row{border-radius:0}.plan-side-stack{gap:10px}.plan-next-card{border-radius:19px}.plan-package-summary{border-radius:17px}
  .workout-template-switcher{display:block;margin:0 -14px 13px}.workout-template-switcher>div{padding:0 14px 5px;scroll-snap-type:x proximity}.workout-template-switcher>div>a{min-width:158px;min-height:56px;scroll-snap-align:start;border-radius:14px}.workout-template-switcher>.button{width:calc(100% - 28px);margin:8px 14px 0}.selected-workout-head{border-radius:18px}.workout-quick-menu>div{position:fixed;left:14px;right:14px;top:auto;bottom:calc(80px + env(safe-area-inset-bottom));width:auto;border-radius:17px;box-shadow:var(--shadow-strong)}
  .workout-builder-block{border-radius:19px}.workout-builder-block>header{min-height:67px;padding:14px;background:#edf4f0}.builder-exercise-row{display:grid;grid-template-columns:1fr auto;gap:9px;padding:13px}.builder-exercise-title{grid-column:1/-1;grid-template-columns:34px minmax(0,1fr) auto;padding:0}.builder-exercise-title>span{width:34px;height:34px}.builder-exercise-title strong{font-size:14px}.mobile-edit-prescription{display:block;min-height:42px;padding:0 11px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--green);font-size:11px;font-weight:850}.builder-exercise-row .inline-prescription{display:none;grid-column:1/-1;padding-top:12px;border-top:1px solid var(--line)}.builder-exercise-row.is-editing .inline-prescription{display:grid}.inline-prescription{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.inline-prescription label{font-size:11px}.inline-prescription input{min-height:48px;font-size:16px}.inline-prescription details,.inline-prescription .apply-future,.save-inline{grid-column:1/-1}.inline-prescription details>div{grid-template-columns:1fr 1fr}.inline-prescription details .wide{grid-column:1/-1}.delete-inline{grid-column:2;grid-row:2;padding:0;align-self:end}.delete-inline button{min-height:42px;padding:8px 11px}.add-to-block{min-height:52px;font-size:13px}.add-builder-block{border-radius:18px}.add-builder-block form{grid-template-columns:1fr}.plan-publish-bar{position:fixed;z-index:70;left:12px;right:12px;bottom:calc(78px + env(safe-area-inset-bottom));display:grid;grid-template-columns:44px minmax(0,1fr);gap:7px 10px;align-items:center;margin:0;padding:10px;border:1px solid rgba(18,103,71,.18);border-left:0;border-radius:18px;background:rgba(255,255,255,.97);backdrop-filter:blur(16px);box-shadow:0 -14px 34px rgba(18,49,35,.13);transition:width .2s ease,right .2s ease,border-radius .2s ease,padding .2s ease}.plan-publish-copy{grid-column:2}.plan-publish-copy p{display:none}.plan-publish-toggle{display:grid;grid-column:1;grid-row:1/3;width:44px;height:100%;min-height:74px;place-items:center;border:0;border-radius:13px;background:var(--mint);color:var(--green);cursor:pointer}.plan-publish-toggle span::before{content:"‹";font-size:31px;font-weight:500;line-height:1}.plan-publish-toggle small{display:none}.plan-publish-bar .publish-form{grid-column:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(118px,1.1fr);gap:7px;width:100%}.plan-publish-bar .publish-form input,.plan-publish-bar .publish-form button{width:100%;min-height:42px}.plan-publish-bar .publish-form button{padding:7px 9px;font-size:10px;line-height:1.1}.plan-publish-bar.is-collapsed{right:auto;width:54px;padding:5px;border-radius:0 17px 17px 0}.plan-publish-bar.is-collapsed .plan-publish-copy,.plan-publish-bar.is-collapsed .publish-form{display:none}.plan-publish-bar.is-collapsed .plan-publish-toggle{grid-row:1;width:44px;min-height:50px}.plan-publish-bar.is-collapsed .plan-publish-toggle span::before{content:"›"}
  .exercise-picker{display:block;position:fixed!important;z-index:120;inset:auto 0 0;top:auto!important;width:100%;max-height:88dvh!important;margin:0;padding:10px 15px calc(18px + env(safe-area-inset-bottom));border-radius:25px 25px 0 0!important;overflow:auto;background:#fff;box-shadow:0 -28px 80px rgba(4,28,19,.28);transform:translateY(110%);opacity:0;visibility:hidden;transition:transform .25s ease,opacity .2s ease,visibility .2s}.exercise-picker.is-open{transform:none;opacity:1;visibility:visible}.exercise-picker::before{content:"";position:fixed;inset:0 0 88dvh;background:rgba(4,24,17,.45);pointer-events:none}.exercise-picker-grabber{display:block;width:44px;height:5px;margin:0 auto 11px;border-radius:8px;background:#d6ded9}.exercise-picker-head{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}.exercise-picker-head>span{min-height:29px;display:grid;place-items:center}.exercise-picker-close{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:13px;background:#f5f7f5;color:var(--ink);font-size:24px}.exercise-search{min-height:52px;border-radius:14px}.exercise-search input{font-size:16px}.exercise-filter-row{margin:11px 0}.exercise-filter-row button{min-height:38px;padding:7px 12px;font-size:11px}.exercise-picker-results{max-height:34dvh}.exercise-pick{min-height:65px;padding:9px 3px}.exercise-pick strong{font-size:13px}.exercise-pick small,.exercise-pick b{font-size:10px}.quick-add-prescription{padding-bottom:4px}.quick-add-prescription input,.quick-add-prescription select{min-height:48px;font-size:16px}.quick-add-prescription>div:not(.chosen-exercise){gap:8px}.quick-add-prescription .primary{min-height:52px}

  /* Trener na sali: tryb skupienia, jedno ćwiczenie na ekranie. */
  body.route-training_session_detail{padding-bottom:calc(96px + env(safe-area-inset-bottom))}body.route-training_session_detail .sidebar,body.route-training_session_detail .topbar,body.route-training_session_detail .mobile-bottom,body.route-training_session_detail .quick-create{display:none!important}body.route-training_session_detail .app-shell{margin:0}body.route-training_session_detail .trainer-workout-page{padding:12px 12px 30px}
  .trainer-workout-page>.back{margin:0 0 12px}.trainer-workout-head{padding:4px 2px 0}.trainer-workout-head h1{font-size:25px}.trainer-workout-head p{font-size:12px}.live-save-state{align-self:stretch;min-height:38px;padding:0 12px;border-radius:12px;background:var(--mint);color:var(--green)}.workout-progress-bar{position:sticky;z-index:12;top:0;border-radius:14px}.readiness-strip{border-radius:14px}
  .trainer-workout-layout{display:block}.trainer-live-block{display:contents}.trainer-live-block>header{display:none}.live-exercise-card{display:none;margin:0;border-radius:20px}.live-exercise-card.is-mobile-active{display:block}.live-exercise-card>header{grid-template-columns:42px minmax(0,1fr) auto;padding:15px}.live-exercise-card h2{font-size:21px}.live-exercise-card header>a{min-height:42px;display:flex;align-items:center}.live-context{grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:0}.live-context>div{min-width:0;padding:11px 9px}.live-context small{font-size:8px}.live-context strong{font-size:11px;overflow-wrap:anywhere}.live-set-row{display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;margin:10px;padding:12px;border:1px solid var(--line);border-radius:16px}.live-set-row>b{grid-row:auto;width:34px;height:34px}.previous-set,.planned-set{grid-column:2;padding:0;font-size:11px}.previous-set::before{content:"Poprzednio: ";color:var(--muted);font-size:9px;text-transform:uppercase}.planned-set::before{content:"Plan: ";color:var(--muted);font-size:9px;text-transform:uppercase}.actual-set-controls{grid-column:1/-1;grid-template-columns:1.45fr .75fr;gap:9px}.actual-set-controls label{font-size:10px}.actual-set-controls input{min-height:54px;font-size:19px;font-weight:850;text-align:center}.weight-control button{min-width:48px;min-height:54px;font-size:12px}.complete-live-set,.completed-check{grid-column:2;grid-row:1;justify-self:end}.complete-live-set span,.completed-check{width:44px;height:44px;border-radius:13px}.live-set-more{grid-column:1/-1}.live-set-more summary{min-height:42px;display:flex;align-items:center;font-size:11px}.live-set-more input{min-height:48px;font-size:16px}.trainer-session-side{position:static;margin-top:18px}.session-finish-card{grid-template-columns:1fr;padding:18px;border-radius:19px}.session-finish-card>*{grid-column:1!important}.session-finish-card input,.session-finish-card textarea{font-size:16px;min-height:50px}.mobile-live-controller{display:grid;position:fixed;z-index:95;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));grid-template-columns:50px minmax(0,1fr) 50px 78px;gap:7px;align-items:center;padding:8px;border:1px solid rgba(255,255,255,.12);border-radius:19px;background:rgba(11,53,40,.97);color:#fff;box-shadow:0 18px 50px rgba(5,30,21,.36);backdrop-filter:blur(18px)}.mobile-live-controller>button{height:48px;border:0;border-radius:13px;background:#ffffff15;color:#fff;font-size:21px}.mobile-live-controller>button:disabled{opacity:.35}.mobile-live-controller>div{min-width:0;display:flex;flex-direction:column}.mobile-live-controller small{color:#9fc9b5;font-size:9px}.mobile-live-controller strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.mobile-live-controller .mobile-finish-session{background:#fff;color:var(--green-dark);font-size:11px;font-weight:900}.rest-timer{bottom:calc(88px + env(safe-area-inset-bottom));z-index:110;border-radius:17px}

  /* Panel klienta */
  body.client-mode{background:#f4f7f5}.client-portal-header{height:64px;padding:0 14px;position:sticky;top:0;z-index:40;box-shadow:0 8px 28px rgba(8,35,26,.12)}.client-portal-header .brand{padding:0;font-size:18px}.portal-mobile-nav{height:calc(70px + env(safe-area-inset-bottom));padding:6px 6px env(safe-area-inset-bottom);background:rgba(255,255,255,.96);backdrop-filter:blur(18px);box-shadow:0 -10px 35px rgba(18,49,35,.08)}.client-portal{padding-top:18px}.portal-welcome{margin-bottom:16px}.portal-welcome h1{font-size:29px}.portal-welcome>div>p:not(.eyebrow){font-size:13px}.portal-trainer{margin-top:10px;padding:10px 13px;border-radius:13px;background:#fff;border:1px solid var(--line)}.next-action{grid-template-columns:1fr;padding:19px;border-radius:21px;background:linear-gradient(135deg,#0b3528,#126747);box-shadow:0 18px 40px rgba(10,57,40,.2)}.next-action>span{display:none}.next-action small{font-size:9px;letter-spacing:.08em}.next-action strong{font-size:22px;line-height:1.2;margin-top:4px}.next-action p{font-size:13px}.next-action>b{grid-column:1;min-height:45px;margin-top:8px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:#fff;color:var(--green-dark)}.portal-summary{gap:11px}.portal-summary article{padding:17px;min-height:150px}.portal-summary strong{font-size:22px}.portal-inline-actions a{min-height:43px;display:flex;align-items:center;justify-content:center;flex:1;border-radius:11px}.onboarding-flow{padding:17px;border-radius:19px}.onboarding-flow-head{align-items:flex-start;gap:10px}.onboarding-flow-head>strong{white-space:nowrap}.onboarding-track{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));overflow-x:auto;scroll-snap-type:x proximity}.onboarding-step{min-height:62px;scroll-snap-align:start;border-radius:13px}.portal-grid{gap:12px}.panel-card{padding:17px}.portal-plan-day summary{min-height:54px}.portal-exercise{border-radius:12px}.portal-doc-summary{padding:18px;border-radius:18px}.portal-doc-summary .button{width:100%}
  .client-week-nav{position:sticky;z-index:14;top:64px;display:flex;overflow-x:auto;margin:0 -14px 14px;padding:8px 14px;background:rgba(244,247,245,.96);backdrop-filter:blur(12px)}.client-week-nav a{flex:0 0 auto;min-height:42px;display:grid;place-items:center;border-radius:12px}.client-plan-weeks{gap:18px}.client-workout-card{border-radius:19px}.client-workout-card>header{padding:16px}.client-plan-block{padding:13px 15px}.client-plan-exercise{padding:12px 0}.client-prescription em{padding:7px 9px;border-radius:9px}

  /* Samodzielny trening klienta korzysta z tego samego trybu skupienia. */
  body.route-client_portal_workout{padding-bottom:calc(98px + env(safe-area-inset-bottom))}body.route-client_portal_workout .client-portal-header,body.route-client_portal_workout .portal-mobile-nav{display:none!important}.workout-run{padding:12px 12px 30px}.workout-run>.back{margin-bottom:12px}.workout-run-hero{padding:18px;border-radius:20px}.workout-run-hero h1{font-size:27px}.workout-run-list{display:block}.workout-run-exercise{display:none;padding:15px;border-radius:20px}.workout-run-exercise.is-mobile-active{display:block}.workout-run-exercise>header{grid-template-columns:38px minmax(0,1fr);padding-bottom:12px}.workout-run-exercise h2{font-size:21px}.quick-set{margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:16px}.quick-set-top{gap:7px}.quick-set-fields{grid-template-columns:1fr 1.4fr;gap:9px}.quick-set-fields input{min-height:54px;font-size:19px;font-weight:850;text-align:center}.quick-set-actions{align-items:stretch;flex-direction:column}.complete-set{min-height:48px;justify-content:center;border-radius:13px}.set-more summary{min-height:44px;display:flex;align-items:center}.set-more input{min-height:48px;font-size:16px}.client-workout-controller{display:grid;position:fixed;z-index:95;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));grid-template-columns:50px minmax(0,1fr) 50px 94px;gap:7px;align-items:center;padding:8px;border-radius:19px;background:rgba(11,53,40,.97);color:#fff;box-shadow:0 18px 50px rgba(5,30,21,.36)}.client-workout-controller>button{height:48px;border:0;border-radius:13px;background:#ffffff15;color:#fff;font-size:21px}.client-workout-controller>button:disabled{opacity:.35}.client-workout-controller>div{min-width:0;display:flex;flex-direction:column}.client-workout-controller small{color:#9fc9b5;font-size:9px}.client-workout-controller strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-workout-controller .client-finish-jump{background:#fff;color:var(--green-dark);font-size:10px;font-weight:900}.workout-finish{margin-top:18px;padding:18px;border-radius:19px}.workout-finish input,.workout-finish textarea{min-height:50px;font-size:16px}
}

@media (min-width:600px) and (max-width:850px){
  .page{padding-left:22px;padding-right:22px}.dashboard-page .daily-layout{grid-template-columns:minmax(0,1.25fr) minmax(270px,.75fr)}.client-flow-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-doc-summary{flex-direction:row}.portal-doc-summary .button{width:auto}.week-board{grid-auto-columns:min(44vw,360px);margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px}.plan-builder-layout{display:grid;grid-template-columns:1fr}.exercise-picker{left:auto;width:min(520px,70vw);border-radius:25px 0 0 0!important;max-height:100dvh!important}.exercise-picker::before{display:none}.trainer-workout-page,.workout-run{max-width:760px;margin:auto}.live-context{grid-template-columns:repeat(3,1fr)}.actual-set-controls{grid-template-columns:1.5fr .7fr}.client-workout-card>header{flex-direction:row;align-items:center}
}

@media (max-width:390px){
  .page{padding-left:11px;padding-right:11px}.mobile-top-brand>span:last-child{display:none}.compact-stats{grid-template-columns:1fr 1fr}.compact-stats .stat-card{padding:13px}.flow-filter-bar{margin-left:-11px;margin-right:-11px;padding-left:11px}.plan-view-tabs,.client-week-nav{margin-left:-11px;margin-right:-11px}.mobile-live-controller,.client-workout-controller{left:5px;right:5px;grid-template-columns:46px minmax(0,1fr) 46px 74px}.client-workout-controller{grid-template-columns:46px minmax(0,1fr) 46px 86px}.actual-set-controls,.quick-set-fields{grid-template-columns:1fr}.weight-control button{min-width:46px}.quick-add-prescription>div:not(.chosen-exercise){grid-template-columns:1fr 1fr}.quick-add-prescription>div:not(.chosen-exercise)>label:last-child{grid-column:1/-1}
}

/* Centrum powiadomień */
.notification-page,.notification-editor-page,.notification-history-page{max-width:1240px}.notification-heading{align-items:flex-end}.notification-alert{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:18px;padding:15px 18px;border-left:5px solid #d98935}.notification-alert>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#fff0dd;color:#9a5518;font-weight:900}.notification-alert p{margin:3px 0;color:var(--muted)}.notification-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:28px}.notification-stats article{display:flex;gap:13px;align-items:center;padding:17px 19px}.notification-stats article.has-error{border-color:#efc4c4}.notification-stat-icon{width:44px;height:44px;display:grid;flex:none;place-items:center;border-radius:14px;font-size:18px;font-weight:900}.notification-stat-icon.scheduled{background:#eef2ff;color:#5768b0}.notification-stat-icon.sent{background:var(--mint);color:var(--green)}.notification-stat-icon.failed{background:#fff0ed;color:#b14a42}.notification-stats small{color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.1em}.notification-stats strong{display:block;margin:1px 0;font-size:25px}.notification-stats p{margin:0;color:var(--muted);font-size:10px}.notification-section{margin-bottom:24px}.notification-section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:12px}.notification-section-head h2{margin:2px 0 3px}.notification-section-head p{margin:0;color:var(--muted)}.notification-section-head>span{padding:6px 10px;border-radius:16px;background:var(--mint);color:var(--green);font-size:10px;font-weight:850}.notification-rule-list{display:grid;gap:10px}.notification-rule-card{display:grid;grid-template-columns:72px minmax(0,1fr) auto auto;gap:15px;align-items:center;padding:15px 17px;transition:.18s}.notification-rule-card.disabled{opacity:.62;background:#f9faf9}.notification-rule-channel{display:grid;place-items:center;gap:3px;align-self:stretch;padding:9px;border-radius:13px;background:#f0f5f2;color:var(--green)}.notification-rule-channel span{font-size:20px}.notification-rule-channel small{font-size:8px;font-weight:900}.notification-rule-copy>div{display:flex;gap:8px;align-items:center}.notification-rule-copy>div>small{color:var(--muted);font-size:9px}.notification-rule-copy h3{margin:5px 0 2px;font-size:15px}.notification-rule-copy p{margin:0;color:var(--muted);font-size:10px}.notification-rule-copy>strong{display:block;margin-top:7px;color:var(--green);font-size:10px}.notification-rule-state{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:12px;background:#ecefec;color:#6d7871;font-size:9px;font-weight:900}.notification-rule-state::before{content:"";width:6px;height:6px;border-radius:50%;background:#9aa39e}.notification-rule-state.active{background:var(--mint);color:var(--green)}.notification-rule-state.active::before{background:var(--green)}.notification-rule-results{display:flex;gap:14px}.notification-rule-results>div{display:flex;flex-direction:column;align-items:flex-end}.notification-rule-results strong{font-size:16px}.notification-rule-results small{color:var(--muted);font-size:9px}.notification-rule-results .error{color:#ad463f}.notification-rule-actions{display:flex;gap:7px;align-items:center}.notification-rule-actions form{margin:0}.quiet-button{min-height:40px;padding:8px 10px;border:0;background:transparent;color:var(--muted);font-size:10px;font-weight:800;cursor:pointer}.notification-recent{padding:18px}.notification-recent-list{display:grid}.notification-message-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto 85px;gap:11px;align-items:center;padding:11px 2px;border-top:1px solid var(--line)}.notification-message-row>div{display:flex;min-width:0;flex-direction:column}.notification-message-row strong,.notification-message-row small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-message-row small,.notification-message-row time{color:var(--muted);font-size:9px}.message-status{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#eff2f0;color:#6c7771;font-weight:900}.message-status.sent{background:var(--mint);color:var(--green)}.message-status.failed{background:#fff0ed;color:#b14a42}.message-status.scheduled{background:#eef2ff;color:#5768b0}

.notification-editor-head{display:flex;justify-content:space-between;align-items:center;margin:15px 0 19px}.notification-editor-head h1{margin:3px 0}.notification-editor-head p:not(.eyebrow){margin:0;color:var(--muted)}.notification-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:16px;align-items:start}.notification-editor-main,.notification-editor-side{display:grid;gap:14px}.notification-editor-side{position:sticky;top:82px}.editor-section{padding:20px}.editor-step{display:flex;gap:12px;align-items:center;margin-bottom:16px}.editor-step>span{width:34px;height:34px;display:grid;flex:none;place-items:center;border-radius:11px;background:var(--green-dark);color:#fff;font-weight:900}.editor-step strong{font-size:14px}.editor-step p{margin:2px 0 0;color:var(--muted);font-size:10px}.trigger-summary{padding:15px;border-radius:13px;background:#f2f6f3;border:1px solid var(--line)}.trigger-summary>span{display:block;color:var(--green);font-size:8px;font-weight:900;letter-spacing:.09em}.trigger-summary>strong{display:block;margin:4px 0}.trigger-summary p{margin:0;color:var(--muted);font-size:10px}.condition-grid,.test-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:13px}.condition-grid>div,.test-grid>div,.editor-fields>div{display:grid;gap:5px}.condition-grid label,.test-grid label,.editor-fields label{font-size:10px;font-weight:850}.condition-grid input,.test-grid input,.test-grid select,.editor-fields input,.editor-fields textarea{width:100%;border:1px solid #c7d2cb;border-radius:11px;padding:11px;background:#fff}.condition-grid input,.test-grid input,.test-grid select,.editor-fields input{min-height:46px}.condition-grid small,.test-grid small{color:var(--muted);font-size:9px}.instant-condition{grid-column:1/-1!important;display:flex!important;align-items:center;gap:11px}.instant-condition>span{font-size:24px}.instant-condition p{margin:2px 0;color:var(--muted);font-size:10px}.editor-fields{display:grid;gap:13px}.editor-fields textarea{min-height:310px;resize:vertical;line-height:1.55}.variable-panel{padding:17px}.variable-panel h2{margin:3px 0}.variable-panel p:not(.eyebrow){margin:0;color:var(--muted);font-size:10px}.variable-list{display:grid;gap:5px;margin-top:13px;max-height:310px;overflow:auto}.variable-list button{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:9px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left;cursor:pointer}.variable-list button:hover{border-color:var(--green);background:#f4faf6}.variable-list span{font-size:10px;font-weight:750}.variable-list code{color:var(--green);font-size:8px}.email-preview{overflow:hidden}.email-preview-toolbar{display:flex;gap:5px;align-items:center;padding:10px 13px;background:#edf1ee}.email-preview-toolbar>span{width:7px;height:7px;border-radius:50%;background:#c7d0ca}.email-preview-toolbar small{margin-left:auto;color:var(--muted);font-size:8px;font-weight:900}.email-preview-message{padding:17px}.email-preview-message>small{display:block;margin-bottom:5px;color:var(--muted);font-size:8px;font-weight:900}.email-preview-message>strong{display:block;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:12px}.email-preview-message>div{padding-top:13px;color:#405047;font-size:10px;line-height:1.55;overflow-wrap:anywhere}.notification-editor-actions{position:sticky;z-index:20;bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:16px;padding:12px 14px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.97);box-shadow:var(--shadow-strong);backdrop-filter:blur(14px)}.notification-editor-actions>label{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:850}.notification-editor-actions>label input{width:20px;height:20px}.notification-editor-actions>div{display:flex;gap:8px}.notification-version-history{margin-top:16px;padding:0;overflow:hidden}.notification-version-history>summary{display:flex;justify-content:space-between;padding:16px 18px;cursor:pointer;font-weight:850}.notification-version-history>summary span{color:var(--green)}.notification-version-history>div{padding:0 18px 14px}.notification-version-history article{display:grid;grid-template-columns:1fr auto auto;gap:12px;padding:10px 0;border-top:1px solid var(--line);font-size:10px}.notification-version-history article span,.notification-version-history article small{color:var(--muted)}

.notification-history-filters{display:grid;grid-template-columns:220px minmax(260px,1fr) auto;gap:11px;align-items:end;padding:14px;margin-bottom:14px}.notification-history-filters label{display:grid;gap:4px;color:var(--muted);font-size:9px;font-weight:850}.notification-history-filters select{min-height:44px;padding:9px;border:1px solid var(--line);border-radius:10px;background:#fff}.notification-history-list{display:grid;gap:9px}.notification-history-item{padding:0;overflow:hidden}.notification-history-item>summary{display:grid;grid-template-columns:34px minmax(0,1fr) auto 90px 20px;gap:11px;align-items:center;padding:14px 16px;cursor:pointer}.notification-history-item>summary>div{display:flex;min-width:0;flex-direction:column}.notification-history-item>summary strong,.notification-history-item>summary small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-history-item>summary small,.notification-history-item>summary time{color:var(--muted);font-size:9px}.notification-history-detail{display:grid;grid-template-columns:270px minmax(0,1fr);gap:15px;padding:16px;border-top:1px solid var(--line);background:#f7f9f7}.notification-history-detail dl{margin:0}.notification-history-detail dl>div{display:grid;grid-template-columns:75px 1fr;gap:8px;padding:6px 0}.notification-history-detail dt{color:var(--muted);font-size:9px}.notification-history-detail dd{margin:0;font-size:10px;font-weight:700}.delivery-error{grid-column:1/-1;padding:12px;border-radius:11px;background:#fff0ed;color:#8a3732}.delivery-error p{margin:4px 0 9px;font-size:10px}.message-snapshot{padding:14px;border-radius:12px;background:#fff}.message-snapshot small{display:block;margin:0 0 5px;color:var(--muted);font-size:8px;font-weight:900}.message-snapshot strong{display:block;margin-bottom:14px}.message-snapshot p{margin:0;font-size:11px;line-height:1.6}.pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:15px}.pagination span{color:var(--muted);font-size:10px}

@media(max-width:850px){
  .notification-heading{align-items:stretch}.notification-heading .actions{grid-template-columns:1fr 1fr}.notification-alert{grid-template-columns:38px 1fr;padding:14px}.notification-alert>a{grid-column:1/-1;width:100%;text-align:center}.notification-stats{display:flex;gap:9px;overflow-x:auto;margin:0 -14px 23px;padding:0 14px 8px;scroll-snap-type:x mandatory}.notification-stats article{min-width:210px;scroll-snap-align:start;padding:14px}.notification-section-head{align-items:flex-start;gap:8px}.notification-section-head p{font-size:11px}.notification-rule-card{grid-template-columns:50px minmax(0,1fr);gap:10px;padding:14px}.notification-rule-channel{grid-row:1;height:58px}.notification-rule-copy{grid-row:1}.notification-rule-copy h3{font-size:14px}.notification-rule-results{grid-column:2;justify-content:flex-start}.notification-rule-results>div{align-items:flex-start}.notification-rule-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.notification-rule-actions .button,.notification-rule-actions button{width:100%;text-align:center}.notification-recent{padding:15px}.notification-message-row{grid-template-columns:32px minmax(0,1fr) auto}.notification-message-row time{grid-column:2}.notification-message-row>.status{grid-column:3;grid-row:1/3}.notification-editor-head{align-items:flex-start;gap:10px}.notification-editor-head h1{font-size:25px}.notification-editor-layout{grid-template-columns:1fr}.notification-editor-side{position:static}.variable-panel{order:1}.email-preview{order:2}.variable-list{display:flex;max-height:none;overflow-x:auto}.variable-list button{min-width:170px;flex-direction:column;align-items:flex-start}.editor-section{padding:16px}.editor-fields textarea{min-height:280px;font-size:16px}.condition-grid input,.test-grid input,.test-grid select,.editor-fields input{font-size:16px}.notification-editor-actions{bottom:calc(76px + env(safe-area-inset-bottom));align-items:stretch;flex-direction:column}.notification-editor-actions>div{display:grid;grid-template-columns:1fr 1fr}.notification-editor-actions button{width:100%;font-size:11px}.notification-version-history article{grid-template-columns:1fr auto}.notification-version-history article small{grid-column:1/-1}.notification-history-filters{grid-template-columns:1fr 1fr}.notification-history-filters button{grid-column:1/-1}.notification-history-item>summary{grid-template-columns:32px minmax(0,1fr) auto}.notification-history-item>summary time{grid-column:2}.notification-history-item>summary>.status{grid-column:3;grid-row:1/3}.notification-history-item>summary>b{display:none}.notification-history-detail{grid-template-columns:1fr}.notification-history-detail dl{display:grid;grid-template-columns:1fr 1fr}.message-snapshot{grid-column:1}.pagination{flex-wrap:wrap}
}

@media(max-width:480px){.condition-grid,.test-grid,.notification-history-filters{grid-template-columns:1fr}.notification-history-filters button{grid-column:1}.notification-editor-actions>div{grid-template-columns:1fr}.notification-history-detail dl{grid-template-columns:1fr}.notification-heading .actions{grid-template-columns:1fr}}

/* Podgląd odpowiada karcie HTML, którą faktycznie otrzymuje klient. */
.email-preview-message>.email-preview-canvas{margin-top:13px;padding:14px;border-radius:10px;background:#f3f6f3;color:#14231c;font-size:10px;line-height:1.55;overflow-wrap:anywhere}
.email-preview-canvas>.email-preview-brand{display:block;margin-bottom:14px;color:#0b3528;font-size:14px}
.email-preview-canvas>[data-preview-body]{padding:0}
.email-preview-canvas>.email-preview-footer{display:block;margin-top:17px;padding-top:11px;border-top:1px solid #e5ebe7;color:#66756d;font-size:8px}

@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Domknięcie audytu produkcyjnego: brak przewijania całej strony w bok. */
html,body{max-width:100%;overflow-x:hidden}.app-shell,main,.page,.card{min-width:0}
.overdue-booking-action{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;padding:18px;border-left:5px solid #b54b43}.overdue-booking-action>div{display:grid;gap:4px}.overdue-booking-action small{color:var(--muted)}
.slot-days{display:grid;gap:10px}.slot-day{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}.slot-day>summary{display:grid;grid-template-columns:1fr auto 18px;gap:12px;align-items:center;min-height:58px;padding:10px 14px;cursor:pointer;list-style:none}.slot-day>summary::-webkit-details-marker{display:none}.slot-day>summary>div{display:flex;flex-direction:column}.slot-day>summary span,.slot-day>summary small{color:var(--muted);font-size:11px}.slot-day[open]>summary{border-bottom:1px solid var(--line);background:#f5faf7}.slot-day .slot-list{padding:11px;margin:0}.slot-day .slot-list>a{min-height:66px;justify-content:center}.slot-day .slot-list>a strong{color:var(--green-dark)}
.error-page{min-height:calc(100vh - 100px);display:grid;place-items:center}.error-card{max-width:600px;padding:42px;text-align:center}.error-card>span{display:inline-grid;place-items:center;min-width:68px;height:42px;padding:0 12px;border-radius:999px;background:var(--mint);color:var(--green);font-size:18px;font-weight:900}.error-card h1{margin:10px 0}.error-card p:not(.eyebrow){max-width:470px;margin:0 auto 18px;color:var(--muted)}

@media(max-width:540px){
  .availability-guide{display:grid;grid-template-columns:28px minmax(0,1fr);overflow:visible}.availability-guide>b{display:none}.availability-guide>div{min-width:0;padding:5px 0}
  .availability-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-left:0;margin-right:0;padding:0;overflow:visible}.availability-tabs a{min-width:0;padding:11px 5px;text-align:center;font-size:10px;white-space:normal}
  .notification-stats{display:grid;grid-template-columns:1fr;margin-left:0;margin-right:0;padding:0;overflow:visible}.notification-stats article{min-width:0}
  .overdue-booking-action{align-items:stretch;flex-direction:column}.overdue-booking-action button{width:100%}
  .booking-week-picker{grid-template-columns:1fr 1fr}.booking-week-picker form{grid-column:1/-1;grid-row:1}.slot-day>summary{grid-template-columns:1fr auto 16px}.slot-day>summary small{max-width:96px;text-align:right}.slot-day .slot-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .error-card{padding:28px 20px}
}

/* Trening prowadzony — spokojny, pełnoekranowy tryb klienta */
body.route-client_portal_workout{padding:0;background:#eef3ef}body.route-client_portal_workout .client-portal-header,body.route-client_portal_workout .portal-mobile-nav{display:none!important}body.route-client_portal_workout .app-shell{margin:0;min-height:100dvh}

/* Client progress: compact, touch-first and readable without horizontal scrolling. */
.portal-progress-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0 12px}.portal-progress-summary>div{display:flex;flex-direction:column;padding:11px;border-radius:12px;background:#f1f6f3}.portal-progress-summary strong{font-size:20px;color:var(--green-dark)}.portal-progress-summary small{font-size:10px;color:var(--muted)}.portal-progress-feature{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;gap:12px;align-items:center;padding:12px 2px;border-top:1px solid var(--line);color:inherit;text-decoration:none}.portal-progress-feature>div,.portal-progress-feature>span{display:flex;min-width:0;flex-direction:column}.portal-progress-feature>div strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-progress-feature small{font-size:10px;color:var(--muted)}.portal-progress-feature>span{text-align:right}.portal-progress-feature>i{font-size:24px;color:var(--green);font-style:normal}.progress-all-link{display:flex;justify-content:center;margin-top:6px;padding:11px;border-radius:11px;background:var(--mint);color:var(--green-dark);font-size:12px;font-weight:850;text-decoration:none}
.progress-exercises-section{margin-bottom:24px}.progress-section-heading{padding:0 2px}.progress-filter{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 12px;scrollbar-width:none}.progress-filter::-webkit-scrollbar{display:none}.progress-filter button{flex:none;min-height:38px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font:inherit;font-size:11px;font-weight:800;cursor:pointer}.progress-filter button.active{border-color:var(--green-dark);background:var(--green-dark);color:#fff}.exercise-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.exercise-result-card{display:flex;flex-direction:column;padding:18px;color:inherit;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}.exercise-result-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(9,49,35,.1)}.exercise-result-card[hidden]{display:none}.exercise-result-card header{display:flex;justify-content:space-between;gap:10px}.exercise-result-card header>div{min-width:0}.exercise-result-card header small{color:var(--green);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.exercise-result-card h3{margin:3px 0 0;font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exercise-result-card header p{margin:2px 0 0;color:var(--muted);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exercise-result-card header>span{font-size:27px;color:var(--green)}.exercise-result-main{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:17px}.exercise-result-main>div{display:flex;flex-direction:column}.exercise-result-main small{color:var(--muted);font-size:10px}.exercise-result-main strong{font-size:27px;color:var(--green-dark);line-height:1}.exercise-result-main strong i,.exercise-progress-current strong i{font-size:.48em;font-style:normal}.exercise-sparkline{width:100%;height:48px;margin:10px 0 2px;background:linear-gradient(180deg,#fff,#f5f9f7);border-radius:9px}.exercise-sparkline polyline,.progress-history-chart polyline{fill:none;stroke:var(--green);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.exercise-result-card footer{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto;padding-top:11px;color:var(--muted);font-size:9px}.exercise-result-card footer span{padding:5px 7px;border-radius:7px;background:#f2f5f3}.exercise-result-card footer b{color:var(--green-dark)}
.exercise-progress-page>.back{display:inline-flex;margin-bottom:15px;color:var(--green);font-size:12px;font-weight:850;text-decoration:none}.exercise-progress-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:27px;background:linear-gradient(135deg,#0b3528,#126747);color:#fff}.exercise-progress-hero h1{margin:3px 0;font-size:32px}.exercise-progress-hero p:not(.eyebrow){margin:0;color:#c9e0d5}.exercise-progress-current{display:flex;flex-direction:column;text-align:right}.exercise-progress-current small{color:#abd2bf}.exercise-progress-current strong{font-size:34px}.exercise-progress-current span{font-size:11px}.progress-detail-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0}.progress-detail-summary article{display:flex;flex-direction:column;padding:17px}.progress-detail-summary small,.exercise-progress-context small{color:var(--muted)}.progress-detail-summary strong{font-size:21px;color:var(--green-dark)}.progress-history-card{padding:21px}.progress-history-chart{width:100%;height:150px;margin:5px 0 18px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#f5f9f7);border-radius:12px}.progress-history-list>div{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:12px;padding:13px 2px;border-top:1px solid var(--line)}.progress-history-list time{font-weight:800}.progress-history-list span{color:var(--muted);font-size:11px}.progress-history-list strong{color:var(--green-dark)}.exercise-progress-context{display:flex;gap:35px;margin-top:14px;padding:18px}.exercise-progress-context>div{display:flex;flex-direction:column}
@media(max-width:850px){.exercise-result-grid{grid-template-columns:1fr}.exercise-progress-hero{align-items:flex-start;flex-direction:column}.exercise-progress-current{text-align:left}.progress-detail-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:540px){body.route-client_portal_progress .client-portal{padding:14px 12px 28px}body.route-client_portal_progress .page-heading{margin-bottom:14px}body.route-client_portal_progress .page-heading h1{font-size:28px}.training-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.training-kpis article{display:flex;min-width:0;padding:12px 9px;border-radius:15px}.training-kpis small{font-size:8px}.training-kpis strong{font-size:22px}.training-kpis span{font-size:9px}.exercise-result-card{padding:15px;border-radius:17px}.exercise-result-main strong{font-size:25px}.exercise-sparkline{height:42px}.progress-filter{margin-right:-12px;padding-right:12px}.progress-card-grid{gap:10px}.progress-detail-card{padding:15px}.progress-detail-summary{grid-template-columns:1fr 1fr;gap:8px}.progress-detail-summary article:last-child{grid-column:1/-1}.exercise-progress-page{padding:14px 12px 28px}.exercise-progress-hero{padding:20px;border-radius:20px}.exercise-progress-hero h1{font-size:27px}.exercise-progress-current strong{font-size:30px}.progress-history-card{padding:16px}.progress-history-chart{height:115px}.progress-history-list>div{grid-template-columns:78px 1fr auto;gap:8px}.exercise-progress-context{display:grid;gap:14px}.portal-progress-summary{gap:6px}.portal-progress-summary>div{padding:9px}.portal-progress-summary strong{font-size:18px}.portal-progress-feature{gap:8px}}

.client-next-workouts-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:24px 2px 13px}.client-next-workouts-head h2{margin:3px 0;font-size:24px}.client-next-workouts-head p:not(.eyebrow){margin:0;color:var(--muted)}.client-next-workouts-head>a{color:var(--green);font-size:12px;font-weight:850;text-decoration:none;white-space:nowrap}.client-upcoming-workouts{display:grid;gap:16px}.client-upcoming-workouts .client-workout-card{margin:0}
@media(max-width:540px){.client-next-workouts-head{align-items:flex-start;flex-direction:column;gap:8px;margin-top:18px}.client-next-workouts-head h2{font-size:21px}.client-next-workouts-head>a{display:flex;min-height:40px;align-items:center}.client-upcoming-workouts{gap:12px}}

/* Własny, wektorowy lockup marki: StudioFlow z subtelnym podpisem producenta. */
.brand-lockup{display:flex;justify-content:center}.brand-with-signature{align-items:center}.brand-copy,.mobile-brand-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;line-height:1}.brand-name{display:block;line-height:1.05}.corestack-signature{display:inline-flex;align-items:center;width:max-content;margin:4px 0 0;color:rgba(207,224,215,.45);line-height:1;text-decoration:none;white-space:nowrap}.corestack-powered{font-size:6px;font-weight:700;letter-spacing:.1em}.corestack-mark{width:13px;height:13px;margin:0 6px;color:rgba(143,224,186,.38);overflow:visible}.corestack-mark path{fill:none;stroke:currentColor;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}.corestack-wordmark{display:flex;align-items:flex-start;flex-direction:column;gap:1px}.corestack-wordmark strong{color:rgba(255,255,255,.7);font-size:7px;font-weight:850;letter-spacing:.13em}.corestack-wordmark small{color:rgba(207,224,215,.45);font-size:4px;font-weight:800;letter-spacing:.25em}.studio-brand-lockup+.main-nav{margin-top:27px}.client-brand-lockup .brand{padding-bottom:0}.corestack-signature.compact{margin-top:3px;transform-origin:left center;transform:scale(.78)}
@media(max-width:850px){.sidebar:target .studio-brand-lockup{padding-right:34px}.client-brand-lockup .corestack-signature{transform-origin:left center;transform:scale(.9)}}
@media(max-width:540px){.mobile-top-brand>.mobile-brand-copy{display:flex}.client-portal-header{padding-left:12px}.client-brand-lockup .corestack-signature{transform:scale(.8)}}

/* Jasny wariant lockupu na ekranach logowania. */
.login-brand{align-items:center}.login-brand .brand-copy{gap:1px}.login-brand .brand-name{color:var(--green-dark);font-weight:650}.login-brand .brand-name b{color:var(--green)}.login-brand .corestack-signature{margin-top:5px;color:#71867b}.login-brand .corestack-powered{font-size:6.5px}.login-brand .corestack-mark{width:14px;height:14px;color:#4f8b70}.login-brand .corestack-wordmark strong{color:#40584d;font-size:7.5px}.login-brand .corestack-wordmark small{color:#71867b;font-size:4.5px}

/* Dashboard klienta — wyraźniejsza hierarchia bez zmiany design systemu. */
.route-client_portal .portal-trainer{display:flex;flex-direction:row;align-items:center;gap:11px;text-align:left}.portal-trainer-avatar{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:12px;background:var(--mint);box-shadow:inset 0 0 0 1px var(--line);color:var(--green-dark);font-size:16px;font-weight:850}.portal-trainer-copy{display:flex;flex-direction:column}.portal-trainer-copy small{font-size:12px;line-height:1.35;color:#60736a;letter-spacing:.03em}.portal-trainer-copy strong{font-size:15px;line-height:1.35;font-weight:850}
.route-client_portal .next-action{transition:transform .16s ease,box-shadow .16s ease}.route-client_portal .next-action:hover{transform:translateY(-1px);box-shadow:0 20px 44px rgba(10,57,40,.24)}.next-training-time{display:flex;min-width:86px;min-height:62px;flex-direction:column;align-items:center;justify-content:center;border-radius:14px;background:#ffffff18;border:1px solid #ffffff20}.next-training-time small{font-size:12px!important;letter-spacing:.02em!important;text-transform:uppercase}.next-training-time strong{font-size:25px!important;line-height:1.05!important;margin:2px 0 0!important;font-variant-numeric:tabular-nums}.next-action-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#ffffff20;font-size:20px;font-weight:900}
.package-usage{height:7px;margin:9px 0 10px;overflow:hidden;border-radius:999px;background:#e3ebe6}.package-usage>span{display:block;height:100%;border-radius:inherit;background:var(--green)}.package-remaining,.plan-completion{display:block;color:var(--green-dark);font-size:14px;line-height:1.35}.package-meta{margin-top:3px;font-size:12px;color:#60736a!important}.portal-summary article>small{font-size:12px;color:#60736a}.portal-summary article>span{font-size:12px}.portal-summary .text-link{font-size:12px}
.client-plan-overview .portal-plan-day>summary,.portal-plan-day-static{display:flex;min-height:78px;align-items:center;justify-content:space-between;border-radius:10px;padding:14px 8px}.client-plan-overview .portal-plan-day>summary{cursor:pointer;transition:background .15s ease}.client-plan-overview .portal-plan-day>summary:hover{background:#f3f7f4}.portal-plan-day-static{cursor:default;background:var(--paper)}.portal-plan-day-static>div{display:flex;min-width:0;flex-direction:column}.portal-plan-day-static small,.portal-plan-day>summary>div>small{font-size:12px;line-height:1.4;color:#60736a}.portal-plan-day-static>div>span,.portal-plan-day>summary>div>span{font-size:12px;line-height:1.4;color:#60736a}.portal-plan-status{flex:0 0 auto;border-radius:999px;background:var(--mint);color:var(--green-dark);font-size:12px;font-weight:800;padding:5px 9px}.portal-plan-chevron{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:50%;background:var(--mint);color:var(--green-dark);font-size:15px;font-style:normal;transition:transform .2s ease}.portal-plan-day[open] .portal-plan-chevron{transform:rotate(180deg)}
.route-client_portal .portal-progress-summary>div{gap:2px;padding:13px}.route-client_portal .portal-progress-summary strong{font-size:23px;line-height:1;color:var(--green-dark)}.route-client_portal .portal-progress-summary small{font-size:12px;line-height:1.35;color:#60736a}.route-client_portal .portal-progress-feature strong{text-transform:none}.route-client_portal .portal-progress-feature small{font-size:12px;color:#60736a}
.portal-doc-summary .document-state{display:flex;align-items:center;gap:8px;margin-top:7px;font-size:13px;font-weight:750}.document-state>span{display:grid;width:22px;height:22px;place-items:center;border-radius:50%;font-size:12px}.document-state.complete{color:var(--green-dark)}.document-state.complete>span{background:var(--mint);color:var(--green)}.document-state.attention{color:#87531d}.document-state.attention>span{background:#fff0e1;color:#9a5b21}.portal-doc-summary:has(.document-state.attention){border-color:#e5cda9;box-shadow:0 10px 28px rgba(114,78,32,.08)}
.portal-desktop-nav>a{transition:color .15s ease,background .15s ease,border-color .15s ease}.portal-desktop-nav>a:hover{color:#fff;background:#ffffff0a}.portal-desktop-nav>a.active{background:#ffffff0d;border-color:#8fe0ba;color:#fff;font-weight:850}.portal-mobile-nav a{border-radius:11px;transition:color .15s ease,background .15s ease}.portal-mobile-nav a:hover{color:var(--green-dark);background:var(--mint)}.portal-mobile-nav a.active{background:var(--mint);color:var(--green-dark);font-weight:850}
.route-client_portal .panel-heading>a,.route-client_portal .text-link,.route-client_portal .progress-all-link,.route-client_portal .portal-progress-feature,.route-client_portal .portal-doc-summary .button{cursor:pointer}.route-client_portal .panel-heading>a:hover,.route-client_portal .text-link:hover{text-decoration:underline}.route-client_portal .portal-progress-feature{border-radius:10px;transition:background .15s ease}.route-client_portal .portal-progress-feature:hover{background:var(--paper)}.route-client_portal :is(a,button,summary):focus-visible{outline:3px solid var(--green-dark);outline-offset:3px}.route-client_portal .next-action:focus-visible,.client-portal-header a:focus-visible{outline-color:#8fe0ba}.route-client_portal .panel-heading p,.route-client_portal .portal-summary article>span,.route-client_portal .empty-state span{font-size:12px;line-height:1.45;color:#60736a}
@media(max-width:850px){.route-client_portal .portal-trainer{margin-top:12px}.route-client_portal .next-action{grid-template-columns:auto minmax(0,1fr)}.route-client_portal .next-action>b{grid-column:1/-1}.next-training-time{min-width:78px}.route-client_portal .portal-progress-summary small{font-size:12px}.portal-mobile-nav a:focus-visible{outline-offset:-3px}}
@media(max-width:540px){.route-client_portal .next-action{gap:13px;padding:17px}.next-training-time{min-width:72px;min-height:58px}.next-training-time strong{font-size:23px!important}.portal-summary article{min-height:auto}.route-client_portal .portal-progress-summary>div{padding:11px 9px}.portal-doc-summary .document-state{font-size:12px}.portal-plan-day>summary>div>span{font-size:12px}}

/* Czytelny plan klienta i prywatne podglądy ćwiczeń. */
.portal-summary-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
.portal-plan-block{padding:10px 0 4px;border-top:1px solid var(--line)}
.portal-plan-block>header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:2px 0 9px}
.portal-plan-block>header strong{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--green-dark)}
.portal-plan-block>header small{font-size:10px;color:var(--muted)}
.portal-exercise{grid-template-columns:58px minmax(0,1fr);align-items:center}
.exercise-media-thumb{width:54px;height:54px;border-radius:12px;overflow:hidden;display:grid!important;place-items:center;background:#e7f1eb;color:var(--green);font-weight:900;flex:none}
.exercise-media-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.exercise-media-thumb video{width:100%;height:100%;object-fit:cover;display:block}
.exercise-media-play{width:100%;height:100%;display:grid;place-items:center;padding:0;border:0;border-radius:inherit;background:linear-gradient(145deg,#0c513d,#18805e);color:#fff!important;text-decoration:none;font:inherit;font-size:18px;box-shadow:inset 0 0 0 1px #ffffff24;cursor:pointer}
.exercise-media-play:hover{background:linear-gradient(145deg,#083e2f,#126e50);transform:none}
.exercise-media-youtube{position:relative;background:#17211e}
.exercise-media-youtube img{width:100%;height:100%;object-fit:cover;display:block}
.exercise-media-youtube span{position:absolute;inset:50% auto auto 50%;translate:-50% -50%;color:#fff;font-size:25px;line-height:1;text-shadow:0 2px 8px #000,0 0 2px #000}
.exercise-media-youtube:hover img{filter:brightness(.86)}
.exercise-inline-player{grid-column:1/-1;width:100%;margin-top:8px;overflow:hidden;border:1px solid #d5e2db;border-radius:14px;background:#101713;box-shadow:0 9px 24px #102c211c}
.exercise-inline-player iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:#101713}
.exercise-inline-player-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;background:#f7faf8}
.exercise-inline-player-actions a,.exercise-inline-player-actions button{min-height:32px;padding:5px 9px;border:0;background:transparent;color:var(--green-dark);font-size:12px;font-weight:800;text-decoration:none;cursor:pointer}
.exercise-inline-player-actions button{font-size:18px;line-height:1}
.exercise-media-thumb.is-playing{height:auto;aspect-ratio:auto;overflow:hidden;background:#101713}
.exercise-inline-player.is-in-place{position:relative;width:100%;margin:0;border:0;border-radius:inherit;box-shadow:none}
.exercise-inline-player.is-in-place .exercise-inline-player-actions{position:absolute;z-index:2;inset:7px 7px auto;justify-content:space-between;padding:0;background:transparent;pointer-events:none}
.exercise-inline-player.is-in-place .exercise-inline-player-actions a,.exercise-inline-player.is-in-place .exercise-inline-player-actions button{min-height:32px;border:1px solid #ffffff3d;border-radius:999px;background:#10251edb;color:#fff;box-shadow:0 3px 12px #0005;backdrop-filter:blur(8px);pointer-events:auto}
.exercise-inline-player.is-in-place .exercise-inline-player-actions a{padding:7px 10px;font-size:10px}
.exercise-inline-player.is-in-place .exercise-inline-player-actions button{width:32px;padding:0;font-size:19px}
.media-settings-card{gap:22px}.media-settings-note{padding:16px;border-radius:14px;background:#f1f7f3}.media-settings-note p{margin:5px 0 0;color:var(--muted);line-height:1.55}
.client-plan-exercise{grid-template-columns:64px minmax(0,1fr) 30px;align-items:center}
.client-plan-media{width:60px;height:60px}
.client-plan-sequence{grid-column:3;grid-row:1}
.client-plan-collapse-float{position:fixed;z-index:50;right:20px;bottom:22px;min-height:44px;padding:0 16px;border:1px solid #b9d2c5;border-radius:22px;background:rgba(255,255,255,.96);color:var(--green-dark);font-weight:900;box-shadow:0 10px 30px rgba(8,35,26,.2);backdrop-filter:blur(12px)}

@media(max-width:850px){
  .portal-summary-compact{grid-template-columns:1fr}
  .client-plan-collapse-float{right:12px;bottom:calc(82px + env(safe-area-inset-bottom))}
  .client-plan-exercise{grid-template-columns:58px minmax(0,1fr) 28px;gap:9px}
  .client-plan-media{width:54px;height:54px}
}
.guided-workout{width:min(960px,100%);min-height:100dvh;margin:auto;padding:0 20px 118px;color:var(--ink)}
.guided-topbar{position:sticky;z-index:50;top:0;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:74px;margin:0 -20px 18px;padding:10px 20px;background:rgba(11,53,40,.97);color:#fff;box-shadow:0 12px 34px rgba(7,40,28,.16);backdrop-filter:blur(18px)}
.guided-topbar>a{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:#ffffff12;color:#fff;text-decoration:none;font-size:23px}.guided-topbar>div{display:flex;min-width:0;flex-direction:column}.guided-topbar small{color:#a8d7c0;font-size:9px;font-weight:850;letter-spacing:.12em}.guided-topbar strong{overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.voice-toggle,.guided-complete-badge{min-height:42px;padding:0 13px;border:1px solid #ffffff24;border-radius:14px;background:#ffffff10;color:#fff;font-size:11px;font-weight:850}.voice-toggle.active{background:#fff;color:var(--green-dark)}.guided-complete-badge{display:flex;align-items:center;background:#fff;color:var(--green-dark)}
.guided-checkin{display:grid;grid-template-columns:minmax(0,.8fr) minmax(460px,1.2fr);gap:34px;align-items:center;min-height:calc(100dvh - 115px);padding-bottom:30px}.guided-intro{padding:24px}.guided-kicker{display:inline-flex;padding:7px 11px;border-radius:20px;background:var(--mint);color:var(--green);font-size:10px;font-weight:850}.guided-intro h1{max-width:550px;margin:17px 0 10px;font-size:42px;line-height:1.04;letter-spacing:-1.5px}.guided-intro p{max-width:520px;color:var(--muted);font-size:16px;line-height:1.6}
.guided-checkin-card{display:grid;gap:20px;padding:27px}.guided-checkin-card>label{display:grid;gap:6px}.guided-checkin-card>label>span{display:flex;justify-content:space-between;gap:14px}.guided-checkin-card label small{color:var(--muted);font-size:10px}.guided-checkin-card output{color:var(--green);font-weight:900}.guided-checkin-card input[type=range],.guided-summary-form input[type=range]{width:100%;accent-color:var(--green)}.guided-checkin-card input[type=range]{min-height:26px}.guided-pain-location input{min-height:48px;padding:11px;border:1px solid var(--line);border-radius:12px;font-size:16px}.guided-care-note{display:grid;grid-template-columns:38px 1fr;gap:11px;align-items:center;padding:12px;border-radius:14px;background:#f1f7f3}.guided-care-note>span{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:var(--mint);color:var(--green);font-size:20px}.guided-care-note p{margin:0;color:var(--muted);font-size:11px}.guided-care-note strong{display:block;color:var(--ink)}.guided-start-button{width:100%;min-height:54px;font-size:14px}
.guided-progress{position:sticky;z-index:40;top:74px;margin:0 -4px 14px;padding:12px 16px;border:1px solid rgba(18,103,71,.12);border-radius:15px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(18,49,35,.06);backdrop-filter:blur(14px)}.guided-progress>div:first-child{display:flex;justify-content:space-between;gap:15px;font-size:11px}.guided-progress>div:first-child span{color:var(--muted)}.guided-progress>div:nth-child(2){height:7px;margin:8px 0 5px;overflow:hidden;border-radius:8px;background:#e5ebe7}.guided-progress>div:nth-child(2)>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#126747,#62b88d);transition:width .25s ease}.guided-progress>small{display:block;color:var(--muted);font-size:9px}.guided-progress>small.error{color:var(--red)}
.guided-readiness{margin-bottom:18px;border:1px solid var(--line);border-radius:15px;background:#fff}.guided-readiness>summary{display:grid;grid-template-columns:10px 1fr auto;gap:9px;align-items:center;min-height:48px;padding:9px 14px;cursor:pointer}.guided-readiness>summary>span{width:9px;height:9px;border-radius:50%;background:#4da478}.guided-readiness.yellow>summary>span{background:#d89a3f}.guided-readiness.red>summary>span{background:#c8564d}.guided-readiness summary small{color:var(--muted)}.guided-readiness>p,.guided-safety-warning{margin:0 14px 13px;color:var(--muted);font-size:11px}.guided-safety-warning{padding:11px;border-radius:11px;background:#fff0ed;color:#913d36}.guided-safety-warning strong{display:block}
.guided-form{padding-bottom:36px}.guided-slide{display:none}.guided-slide.is-active{display:block;animation:guided-in .24s ease}.guided-exercise-head{padding:12px 4px 16px}.guided-exercise-head>div{display:flex;justify-content:space-between;align-items:center}.guided-exercise-head>div span{padding:5px 9px;border-radius:16px;background:var(--mint);color:var(--green);font-size:9px;font-weight:900;text-transform:uppercase}.guided-exercise-head>div small{color:var(--muted);font-weight:800}.guided-exercise-head h1{margin:9px 0 1px;font-size:34px;letter-spacing:-.8px}.guided-exercise-head>p{margin:0;color:var(--muted)}
.guided-media{position:relative;min-height:360px;margin-bottom:14px;overflow:hidden;background:#10271e}.guided-media img,.guided-media video,.guided-media iframe{display:block;width:100%;height:min(52vw,510px);min-height:360px;border:0;object-fit:contain;background:#10271e}.guided-media-credit{position:absolute;right:10px;bottom:10px;padding:5px 8px;border-radius:9px;background:#081a13c9;color:#fff;font-size:8px}.guided-media-fallback{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:25px;text-align:center;color:#fff}.guided-media-fallback>span{width:68px;height:68px;display:grid;place-items:center;border-radius:50%;background:#ffffff18;font-size:25px}.guided-media-fallback>a{color:#b8edcf;font-weight:850}.guided-media-fallback p{margin:0;color:#a8bcb2}.guided-media-fallback.missing{background:radial-gradient(circle at top,#244f3c,#10271e)}
.guided-prescription{padding:22px;margin-bottom:14px}.guided-section-title{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.guided-section-title small{color:var(--green);font-size:9px;font-weight:900;letter-spacing:.12em}.guided-section-title h2{margin:3px 0;font-size:21px}.guided-section-title>span{padding:6px 9px;border-radius:16px;background:#f0f4f1;color:var(--muted);font-size:10px;font-weight:800}.guided-instructions{color:#3f5148;line-height:1.65}.guided-cues{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0 0;padding:0;list-style:none}.guided-cues li{display:grid;grid-template-columns:24px 1fr;gap:7px;align-items:center;padding:9px;border-radius:11px;background:#f4f8f5;font-size:12px}.guided-cues li span{width:23px;height:23px;display:grid;place-items:center;border-radius:8px;background:var(--mint);color:var(--green);font-weight:900}.trainer-personal-note{display:grid;grid-template-columns:42px 1fr;gap:11px;align-items:center;margin-top:14px;padding:12px;border-left:4px solid var(--green);border-radius:12px;background:#edf6f1}.trainer-personal-note>span{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;background:var(--green-dark);color:#fff;font-weight:900}.trainer-personal-note p{margin:0}.trainer-personal-note small{display:block;color:var(--green);font-size:8px;font-weight:900}.trainer-personal-note strong{font-size:12px}.guided-technique-more{margin-top:13px;border-top:1px solid var(--line)}.guided-technique-more summary,.guided-set-more summary{min-height:44px;display:flex;align-items:center;color:var(--green);cursor:pointer;font-size:11px;font-weight:850}.guided-technique-more h3{margin:8px 0 3px;font-size:12px}.guided-technique-more p,.guided-technique-more li{color:var(--muted);font-size:11px}
.guided-sets{display:grid;gap:11px}.guided-set{padding:0;overflow:hidden;transition:.18s}.guided-set.is-complete{border-color:#9ed0b5;background:#f7fcf9}.guided-set>header{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 17px;border-bottom:1px solid var(--line)}.guided-set>header>div:first-child{display:flex;gap:9px;align-items:center}.guided-set>header>div:first-child>span{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;background:var(--green-dark);color:#fff;font-weight:900}.guided-set.is-complete>header>div:first-child>span{background:var(--green)}.guided-set h2{margin:0;font-size:17px}.guided-set-context{display:flex;gap:22px;text-align:right}.guided-set-context p{display:flex;flex-direction:column;margin:0}.guided-set-context small{color:var(--muted);font-size:8px;font-weight:900}.guided-set-context strong{font-size:11px}.guided-result-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.guided-result-fields>label,.guided-set-more label,.guided-exercise-feedback label{display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:850}.guided-result-fields>label>input,.guided-set-more input,.guided-exercise-feedback input,.guided-exercise-feedback textarea{width:100%;min-height:52px;padding:10px;border:1px solid #becbc3;border-radius:12px;background:#fff;font-size:18px;font-weight:850;text-align:center}.guided-stepper{display:grid;grid-template-columns:64px minmax(0,1fr) 64px}.guided-stepper button{border:1px solid #becbc3;background:#f2f6f3;color:var(--green);font-weight:900}.guided-stepper button:first-child{border-radius:12px 0 0 12px}.guided-stepper button:last-child{border-radius:0 12px 12px 0}.guided-stepper input{width:100%;min-width:0;border:solid #becbc3;border-width:1px 0;padding:10px;text-align:center;font-size:20px;font-weight:900}.guided-set-actions{display:flex;justify-content:flex-end;gap:9px;padding:0 16px 15px}.guided-set-actions>button{min-height:48px;padding:9px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--green);font-weight:800}.guided-complete-set input{position:absolute;opacity:0}.guided-complete-set span{min-height:48px;display:flex;align-items:center;justify-content:center;padding:9px 18px;border-radius:12px;background:var(--green);color:#fff;font-weight:900;cursor:pointer}.guided-complete-set input:checked+span{background:var(--green-dark)}.guided-set-more{margin:0 16px;border-top:1px solid var(--line)}.guided-set-more>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 0 14px}.guided-set-more>div>label:last-child{grid-column:span 2}.guided-set-more input{min-height:46px;font-size:15px}
.guided-exercise-feedback{margin-top:14px;padding:0 18px}.guided-exercise-feedback>summary{min-height:54px;display:flex;align-items:center;color:#a55048;cursor:pointer;font-size:11px;font-weight:850}.guided-exercise-feedback>div{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:0 0 17px}.guided-exercise-feedback p,.guided-problem-actions{grid-column:1/-1}.guided-exercise-feedback p{margin:0;color:var(--muted);font-size:11px}.guided-exercise-feedback textarea{text-align:left;font-size:14px}.guided-problem-actions{display:flex;gap:8px}.guided-problem-actions button{min-height:44px;padding:8px 12px;border:1px solid #e1b5b1;border-radius:11px;background:#fff;color:#9b443d;font-weight:850}.guided-problem-actions button.active{background:#9b443d;color:#fff}.guided-difficulty{display:flex;gap:8px;margin-top:11px;padding:15px 18px;border:0}.guided-difficulty legend{float:left;width:100%;margin-bottom:9px;font-size:11px;font-weight:850}.guided-difficulty input{position:absolute;opacity:0}.guided-difficulty label span{display:block;padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--muted);font-size:11px;font-weight:800;cursor:pointer}.guided-difficulty input:checked+span{border-color:var(--green);background:var(--mint);color:var(--green)}
.guided-summary{max-width:720px;margin:auto;padding:38px 0;text-align:center}.guided-summary-mark{width:72px;height:72px;display:grid;place-items:center;margin:auto;border-radius:50%;background:var(--mint);color:var(--green);font-size:32px}.guided-summary h1{margin:5px 0;font-size:38px}.guided-summary>p:not(.eyebrow){max-width:560px;margin:7px auto 20px;color:var(--muted);line-height:1.6}.guided-summary-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:15px}.guided-summary-stats>div{display:flex;flex-direction:column;padding:15px;border-radius:14px;background:#fff}.guided-summary-stats strong{font-size:24px}.guided-summary-stats small{color:var(--muted)}.guided-summary-form{display:grid;gap:15px;padding:22px;text-align:left}.guided-summary-form>label{display:grid;gap:7px;font-size:11px;font-weight:850}.guided-summary-form>label:first-child{grid-template-columns:1fr auto;align-items:center}.guided-summary-form>label:first-child input{grid-column:1/-1}.guided-summary-form output{color:var(--green);font-weight:900}.guided-summary-form textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:12px;font-size:16px}.guided-summary-form details{font-size:11px}.guided-summary-form details summary{min-height:42px;display:flex;align-items:center;color:var(--muted);cursor:pointer}.guided-summary-form details label{display:grid;gap:6px;margin-top:7px}.guided-finish-button,.guided-save-button,.guided-home-button{width:100%;min-height:52px;text-align:center}.guided-home-button{display:flex;align-items:center;justify-content:center;text-decoration:none}
.guided-controller{position:fixed;z-index:90;left:50%;bottom:14px;display:grid;grid-template-columns:54px minmax(0,1fr) 125px;gap:9px;align-items:center;width:min(700px,calc(100vw - 24px));padding:9px;border:1px solid #ffffff18;border-radius:20px;background:rgba(11,53,40,.97);color:#fff;box-shadow:0 22px 55px rgba(5,30,21,.35);transform:translateX(-50%);backdrop-filter:blur(18px)}.guided-controller>button{height:50px;border:0;border-radius:13px;background:#ffffff13;color:#fff;font-size:20px}.guided-controller>button:disabled{opacity:.35}.guided-controller>div{display:flex;min-width:0;flex-direction:column}.guided-controller small{color:#9fc9b5;font-size:9px}.guided-controller strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.guided-controller .guided-next{background:#fff;color:var(--green-dark);font-size:12px;font-weight:900}
.guided-rest-timer{position:fixed;z-index:120;right:18px;bottom:91px;display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;width:min(430px,calc(100vw - 24px));padding:14px;border-radius:18px;background:#fff;color:var(--ink);box-shadow:0 22px 60px rgba(7,35,25,.28)}.guided-rest-timer[hidden]{display:none}.guided-rest-timer>div{display:grid;grid-template-columns:auto 1fr;column-gap:12px}.guided-rest-timer small{grid-column:1;color:var(--green);font-size:8px;font-weight:900}.guided-rest-timer strong{grid-row:1/3;font-size:30px}.guided-rest-timer span{font-size:10px;color:var(--muted)}.guided-rest-timer button{min-height:42px;border:1px solid var(--line);border-radius:11px;background:#f5f8f6;color:var(--green);font-weight:850}
@keyframes guided-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

@media(max-width:700px){
  .guided-workout{padding:0 12px 110px}.guided-topbar{grid-template-columns:44px minmax(0,1fr) auto;min-height:66px;margin:0 -12px 12px;padding:8px 12px}.guided-topbar>a{width:42px;height:42px}.voice-toggle{width:48px;padding:0;font-size:0}.voice-toggle span{font-size:16px}.voice-toggle.active{width:auto;padding:0 10px;font-size:9px}.guided-progress{top:66px;margin:0 0 10px;padding:10px 13px}.guided-checkin{display:block;min-height:auto}.guided-intro{padding:22px 7px 12px}.guided-intro h1{font-size:33px}.guided-intro p{font-size:14px}.guided-checkin-card{gap:17px;padding:19px}.guided-exercise-head{padding-top:8px}.guided-exercise-head h1{font-size:29px}.guided-readiness>summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guided-readiness>summary small{display:none}
  .guided-media{min-height:265px;border-radius:20px}.guided-media img,.guided-media video,.guided-media iframe,.guided-media-fallback{height:56vw;min-height:265px}.guided-prescription{padding:17px}.guided-cues{grid-template-columns:1fr}.guided-section-title{align-items:flex-start}.guided-section-title h2{font-size:19px}.guided-set>header{align-items:flex-start;padding:13px}.guided-set-context{display:grid;gap:5px}.guided-result-fields{grid-template-columns:1fr;padding:14px}.guided-stepper{grid-template-columns:60px minmax(0,1fr) 60px}.guided-stepper button{min-height:56px}.guided-set-actions{display:grid;padding:0 14px 14px}.guided-set-actions>*{width:100%}.guided-set-more{margin:0 14px}.guided-set-more>div{grid-template-columns:1fr 1fr}.guided-set-more>div>label:last-child{grid-column:1/-1}.guided-exercise-feedback{padding:0 15px}.guided-exercise-feedback>div{grid-template-columns:1fr}.guided-exercise-feedback p,.guided-problem-actions{grid-column:1}.guided-problem-actions{display:grid}.guided-difficulty{display:grid;grid-template-columns:repeat(3,1fr);padding:14px}.guided-difficulty label span{padding:9px 5px;text-align:center}.guided-summary{padding:25px 0}.guided-summary h1{font-size:31px}.guided-summary-stats strong{font-size:21px}.guided-summary-stats small{font-size:9px}.guided-summary-form{padding:17px}.guided-controller{bottom:7px;grid-template-columns:50px minmax(0,1fr) 102px;width:calc(100vw - 14px);padding:7px}.guided-rest-timer{right:7px;bottom:78px;grid-template-columns:1fr auto;width:calc(100vw - 14px)}.guided-rest-timer>button:first-of-type{display:none}
}
@media(max-width:390px){.guided-media,.guided-media img,.guided-media video,.guided-media iframe,.guided-media-fallback{min-height:235px}.guided-stepper{grid-template-columns:54px minmax(0,1fr) 54px}.guided-summary-stats{gap:5px}.guided-summary-stats>div{padding:11px 6px}.guided-controller{grid-template-columns:46px minmax(0,1fr) 94px}}

/* self-guided workout readiness and feedback */
.client-workout-readiness{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.client-workout-readiness span{padding:5px 8px;border-radius:20px;background:#eef3f0;color:var(--muted);font-size:9px;font-weight:850}.client-workout-readiness span.ready{background:var(--mint);color:var(--green)}.client-workout-readiness span.warning{background:#fff0e1;color:#9a5b21}.builder-media-state{width:max-content;margin-top:5px;padding:4px 7px;border-radius:16px;font-size:9px!important;font-weight:900;text-decoration:none}.builder-media-state.ready{background:var(--mint);color:var(--green)!important}.builder-media-state.missing{background:#fff0e1;color:#9a5b21!important}.client-exercise-report{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;align-items:center;margin:0 16px 12px;padding:12px 14px;border-radius:13px;background:#eef7f2;border-left:4px solid var(--green)}.client-exercise-report>div{display:flex;flex-direction:column}.client-exercise-report small{color:var(--green);font-size:8px;font-weight:900;letter-spacing:.1em}.client-exercise-report strong{font-size:12px}.client-exercise-report>span{padding:5px 8px;border-radius:12px;background:#fff;font-size:10px;font-weight:850}.client-exercise-report>p{grid-column:1/-1;margin:0;color:var(--muted);font-size:11px}.client-exercise-report.skipped,.client-exercise-report.stopped{background:#fff1ee;border-left-color:#b64f46}.client-exercise-report.skipped small,.client-exercise-report.stopped small{color:#9b443d}
@media(max-width:540px){.client-workout-readiness{margin-top:8px}.client-exercise-report{grid-template-columns:1fr;margin:0 12px 11px}.client-exercise-report>span{width:max-content}.client-exercise-report>p{grid-column:1}}

/* Zakończony trening jest raportem, więc na telefonie pokazujemy wszystkie wyniki. */
.completed-check.is-empty{border-color:var(--line);background:#f3f5f4;color:var(--muted)}
@media(max-width:850px){
  .trainer-workout-page.is-completed .live-exercise-card{display:block;margin-bottom:12px}
}

.booking-week-picker{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:end;margin:18px 0}
.booking-week-picker form,.booking-week-picker label{margin:0}.booking-week-picker input{margin-top:4px}
.client-plan-week{border:0}.client-plan-week>summary{cursor:pointer;list-style:none}.client-plan-week>summary::-webkit-details-marker{display:none}.client-plan-week>summary>b{margin-left:auto;color:var(--green);font-size:10px}.client-plan-week[open]>summary>b{opacity:.65}
@media(max-width:850px){
  .booking-week-picker{grid-template-columns:1fr 1fr}.booking-week-picker form{grid-column:1/-1;grid-row:1}.booking-week-picker .button{text-align:center}
}

/* Lekka rezerwacja klienta: dzień i godzina bez kalendarzowego przeładowania. */
.booking-refresh{max-width:900px;padding-top:34px}.booking-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.booking-change{color:var(--green);font-size:12px;font-weight:850;text-decoration:none}.booking-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0;padding:0;list-style:none}.booking-steps li{display:flex;align-items:center;gap:10px;min-width:0;padding:11px 13px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--muted)}.booking-steps li>span{flex:none;width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#edf1ee;font-weight:900}.booking-steps li>div{display:flex;min-width:0;flex-direction:column}.booking-steps strong{color:var(--ink);font-size:11px}.booking-steps small{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.booking-steps li.done,.booking-steps li.active{border-color:#b8ddc8;background:#f7fcf9}.booking-steps li.done>span,.booking-steps li.active>span{background:var(--green);color:#fff}
.booking-section{padding:28px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 20px 55px rgba(25,70,50,.07)}.booking-section-head{display:flex;align-items:flex-start;gap:13px;margin-bottom:22px}.booking-section-head>span{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:var(--green-dark);color:#fff;font-weight:900}.booking-section-head h2{margin:1px 0 2px;font-size:21px}.booking-section-head p{margin:0;color:var(--muted);font-size:12px}
.booking-service-list{display:grid;gap:10px}.booking-service-list>a{display:grid;grid-template-columns:46px minmax(0,1fr) auto 20px;gap:13px;align-items:center;min-height:76px;padding:12px 15px;border:1px solid var(--line);border-radius:16px;text-decoration:none;transition:.18s}.booking-service-list>a:hover{border-color:#9dceb3;background:#f8fcfa;transform:translateY(-1px)}.booking-service-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:var(--mint);color:var(--green);font-size:17px;font-weight:900}.booking-service-list>a>div{display:flex;flex-direction:column}.booking-service-list>a>div small{color:var(--muted)}.booking-service-list em{max-width:210px;padding:5px 8px;border-radius:20px;background:#eef2ef;color:var(--muted);font-size:9px;font-style:normal;font-weight:850;text-align:center}.booking-service-list em.available{background:var(--mint);color:var(--green)}.booking-service-list em.warning{background:#fff0e1;color:#9a5b21}.booking-service-list em.planned{background:#eaf0f7;color:#426b98}.booking-service-list>a>b{color:var(--green);font-size:19px}
.booking-trainer{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border-radius:16px;background:#f1f7f4}.booking-trainer>span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:var(--green-dark);color:#fff;font-weight:900}.booking-trainer>div{display:flex;flex-direction:column}.booking-trainer small{color:var(--muted);font-size:9px;font-weight:800}.booking-trainer a{color:var(--green);font-size:11px;font-weight:850;text-decoration:none}.booking-trainer-select{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;padding:12px 14px;border-radius:16px;background:#f1f7f4}.booking-trainer-select label{font-size:11px;font-weight:850}.booking-trainer-select select{min-height:44px;border:1px solid #c9d4cd;border-radius:12px;background:#fff;padding:8px 10px}
.booking-alert{margin-top:14px;padding:15px 17px;border:1px solid #efca9f;border-radius:15px;background:#fff7ea;color:#70451f}.booking-alert p{margin:3px 0;font-size:12px}.booking-alert a{color:#87511f;font-size:11px;font-weight:850;text-decoration:none}.booking-week-nav{display:grid;grid-template-columns:44px 1fr 44px;gap:10px;align-items:center;margin:22px 0 12px}.booking-week-nav>a{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:13px;text-decoration:none;font-size:20px}.booking-week-nav>div{display:flex;flex-direction:column;text-align:center}.booking-week-nav small{color:var(--muted);font-size:9px}.booking-week-nav strong{font-size:13px}
.booking-date-strip{display:grid;grid-template-columns:repeat(7,minmax(82px,1fr));gap:8px;overflow-x:auto;padding:2px 1px 9px;scroll-snap-type:x mandatory}.booking-date-strip>a{display:flex;min-width:82px;min-height:86px;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:16px;background:#fff;text-decoration:none;scroll-snap-align:start}.booking-date-strip>a small{color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase}.booking-date-strip>a strong{font-size:23px;line-height:1.2}.booking-date-strip>a span{color:var(--muted);font-size:8px}.booking-date-strip>a.active{border-color:var(--green);background:var(--green-dark);color:#fff;box-shadow:0 10px 25px rgba(16,60,45,.18)}.booking-date-strip>a.active small,.booking-date-strip>a.active span{color:#b9d9ca}.booking-date-strip>a.has-booking:not(.active){border-color:#9bcbb0;background:#f0f8f4}.booking-date-strip>a.has-booking span{color:var(--green);font-weight:850}
.booking-selected-day{margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fbfcfb}.booking-selected-day>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid var(--line)}.booking-selected-day>header small{color:var(--green);font-size:9px;font-weight:850;text-transform:uppercase}.booking-selected-day h3{margin:2px 0 0;font-size:18px}.booking-selected-day>header>span{padding:5px 9px;border-radius:20px;background:var(--mint);color:var(--green);font-size:9px;font-weight:850}.booking-existing{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center;margin-top:13px;padding:13px;border-radius:14px;background:var(--green-dark);color:#fff}.booking-existing>span{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:#ffffff18;font-weight:900}.booking-existing>div{display:flex;min-width:0;flex-direction:column}.booking-existing small{color:#a9c9ba;font-size:8px;font-weight:850;text-transform:uppercase}.booking-existing strong{font-size:13px}.booking-existing p{margin:0;color:#c7dcd2;font-size:10px}.booking-existing a{color:#fff;font-size:10px;font-weight:850}.booking-period{margin-top:17px}.booking-period h4{margin:0 0 8px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.booking-slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.booking-slot-grid>a{display:flex;min-height:55px;flex-direction:column;align-items:center;justify-content:center;border:1px solid #bfd0c6;border-radius:13px;background:#fff;color:var(--green-dark);text-decoration:none}.booking-slot-grid>a:hover{border-color:var(--green);background:var(--mint)}.booking-slot-grid strong{font-size:17px}.booking-slot-grid small{color:var(--muted);font-size:8px}.booking-empty{padding:30px 12px 16px;text-align:center}.booking-empty strong{font-size:14px}.booking-empty p{margin:4px auto 0;max-width:440px;color:var(--muted);font-size:11px}
.booking-confirm{max-width:640px;margin:auto}.booking-confirm-hero{display:grid;grid-template-columns:1fr auto;gap:2px 16px;padding:20px;border-radius:18px;background:var(--green-dark);color:#fff}.booking-confirm-hero small{grid-column:1;color:#a9c9ba;font-size:10px;font-weight:850;text-transform:uppercase}.booking-confirm-hero strong{font-size:21px}.booking-confirm-hero span{grid-row:1/3;grid-column:2;align-self:center;font-size:34px;font-weight:900}.booking-confirm-list{margin:17px 0}.booking-confirm-list>div{display:flex;justify-content:space-between;gap:18px;padding:12px 2px;border-bottom:1px solid var(--line)}.booking-confirm-list dt{color:var(--muted);font-size:11px}.booking-confirm-list dd{margin:0;font-size:12px;font-weight:850;text-align:right}.booking-policy{padding:14px 16px;border-radius:14px;background:#eff7f3}.booking-policy p{margin:3px 0;color:var(--muted);font-size:11px}.booking-confirm-button{min-height:54px;margin-top:16px;border-radius:14px;font-size:15px}
@media(max-width:700px){.booking-refresh{padding:21px 13px 100px}.booking-refresh>.back{margin-bottom:15px}.booking-heading{align-items:flex-start}.booking-heading h1{font-size:31px}.booking-change{padding-top:5px}.booking-steps{gap:5px;margin:18px 0}.booking-steps li{justify-content:center;min-height:45px;padding:7px}.booking-steps li>span{width:28px;height:28px}.booking-steps li>div{display:none}.booking-section{padding:18px 14px;border-radius:21px}.booking-section-head{margin-bottom:17px}.booking-section-head h2{font-size:19px}.booking-service-list>a{grid-template-columns:44px minmax(0,1fr) 18px;padding:11px}.booking-service-list em{grid-column:2;width:max-content;max-width:100%;margin-top:-8px}.booking-service-list>a>b{grid-column:3;grid-row:1/3}.booking-week-nav{margin-top:18px}.booking-date-strip{margin-left:-14px;margin-right:-14px;padding-left:14px;padding-right:14px}.booking-selected-day{margin-left:-5px;margin-right:-5px;padding:14px}.booking-slot-grid{grid-template-columns:repeat(3,1fr)}.booking-existing{grid-template-columns:36px minmax(0,1fr)}.booking-existing>a{grid-column:2}.booking-selected-day>header{align-items:flex-start}.booking-selected-day>header>span{white-space:nowrap}.booking-confirm-hero span{font-size:29px}}
@media(max-width:370px){.booking-slot-grid{grid-template-columns:repeat(2,1fr)}.booking-selected-day>header>span{display:none}.booking-service-icon{width:40px;height:40px}}

/* Plan przypisany do pakietu i biblioteka zestawów A/B/C */
.plan-start-page{max-width:900px}.plan-start-form{padding:24px}.plan-start-form>section{display:grid;grid-template-columns:42px minmax(0,1fr);gap:13px;align-items:start;padding-top:4px}.plan-start-form>section h2{margin:1px 0 4px}.plan-start-form>section p{margin:0}.step-number{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--green-dark);color:#fff;font-weight:900}.training-frequency-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.training-frequency-option{display:grid;grid-template-columns:24px minmax(0,1fr);gap:9px;align-items:start;min-height:92px;padding:15px;border:1px solid var(--line);border-radius:13px;background:#fff;cursor:pointer}.training-frequency-option:has(input:checked){border-color:var(--green);background:var(--mint);box-shadow:0 0 0 2px rgba(18,103,71,.1)}.training-frequency-option input{width:18px;height:18px;margin-top:1px;accent-color:var(--green)}.training-frequency-option span{display:flex;flex-direction:column;gap:6px}.training-frequency-option strong{font-size:13px;line-height:1.35}.training-frequency-option small{color:var(--muted);font-size:10px;line-height:1.4}.plan-start-empty{display:grid;gap:10px;padding:24px;text-align:left}.plan-start-empty .button{width:max-content}
.workout-draft-tools{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(360px,1.2fr);gap:18px;padding:18px;border-left:5px solid var(--green)}.workout-draft-tools h2{margin:2px 0 5px}.workout-draft-tools p:not(.eyebrow){margin:0;color:var(--muted);font-size:12px}.workout-draft-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.workout-draft-actions form,.workout-draft-actions>.empty-inline{display:grid;align-content:start;gap:8px;margin:0;padding:12px;border:1px solid var(--line);border-radius:11px;background:#f8faf8}.workout-draft-actions label{display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:800}.workout-draft-actions input,.workout-draft-actions select{width:100%;min-height:40px;padding:8px;border:1px solid #c6d1ca;border-radius:8px;background:#fff}.workout-draft-actions button{width:100%;align-self:end}.draft-match{padding:9px;border-radius:8px;background:var(--mint);color:var(--green);font-size:10px}.workout-draft-actions button:disabled{opacity:.65;cursor:default}
@media(max-width:850px){.plan-start-form{padding:18px}.training-frequency-options{grid-template-columns:1fr}.training-frequency-option{min-height:0}.workout-draft-tools{grid-template-columns:1fr}.workout-draft-actions{grid-template-columns:1fr 1fr}}
@media(max-width:540px){.plan-start-form>section{grid-template-columns:36px minmax(0,1fr)}.step-number{width:34px;height:34px}.workout-draft-actions{grid-template-columns:1fr}}

/* Korekta przenoszonego pakietu i jednoznaczna nawigacja tygodni. */
.package-adjust-preview{padding:24px;border-left:5px solid #b46a24}.package-adjust-preview h2{margin:14px 0 5px}.package-adjust-preview>p{color:var(--muted)}.package-adjust-bookings{display:grid;gap:7px;margin:18px 0}.package-adjust-bookings>div{display:flex;justify-content:space-between;gap:14px;padding:11px 13px;border-radius:10px;background:#f6f8f7}.package-adjust-bookings span{color:var(--muted);text-align:right}.form-hint{padding:12px 14px;border-radius:10px;background:#f1f7f4;color:var(--muted);font-size:11px}.client-week-nav a.empty{border-style:dashed;background:#f5f6f5;color:#839088}.client-week-nav a.current{box-shadow:inset 0 0 0 2px var(--green);color:var(--green-dark)}
@media(max-width:600px){.package-adjust-preview{padding:18px}.package-adjust-bookings>div{align-items:flex-start;flex-direction:column}.package-adjust-bookings span{text-align:left}.package-adjust-preview .form-actions{align-items:stretch;flex-direction:column}.package-adjust-preview .form-actions>*{width:100%;text-align:center}}
.exercise-name-en{display:block;color:var(--muted);font-size:10px;font-weight:500;line-height:1.35;margin-top:2px}

/* Cross-screen UX polish. Kept in one isolated block for an easy rollback. */
input[type=checkbox],input[type=radio]{accent-color:var(--green)}
.questionnaire-alerts{display:grid;gap:10px;margin:0 0 18px}.questionnaire-alert{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px 17px;border:1px solid #b9ddca;border-left:4px solid var(--green);border-radius:12px;background:#f0faf5;box-shadow:0 8px 24px rgba(18,103,71,.07)}.questionnaire-alert-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--green);color:#fff;font-size:18px;font-weight:900}.questionnaire-alert strong{display:block;font-size:14px}.questionnaire-alert p{margin:3px 0 0;color:var(--muted);font-size:12px}.questionnaire-alert-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.questionnaire-alert-actions .button{white-space:nowrap}.questionnaire-dismiss-dialog{width:min(440px,calc(100vw - 32px));padding:24px;border:1px solid #b9ddca;border-radius:14px;box-shadow:0 22px 70px rgba(0,0,0,.2)}.questionnaire-dismiss-dialog::backdrop{background:rgba(12,32,25,.45)}.questionnaire-dismiss-dialog h2{margin:0 0 10px}.questionnaire-dismiss-dialog p{margin:0 0 20px;line-height:1.5}.questionnaire-dismiss-dialog .form-actions{justify-content:flex-end}.attention-icon.questionnaire{background:#def3e8;color:var(--green)}@media(max-width:700px){.questionnaire-alert{grid-template-columns:36px minmax(0,1fr);padding:14px}.questionnaire-alert-icon{width:34px;height:34px}.questionnaire-alert-actions{grid-column:2}.questionnaire-alert-actions .button{flex:1 1 auto;justify-content:center}}
.form-section{display:grid;gap:16px;padding:2px 0 22px;border-bottom:1px solid var(--line)}
.form-section:last-of-type{border-bottom:0}.form-section-title{display:flex;flex-direction:column;gap:2px}.form-section-title>strong{font-size:16px}.form-section-title>small{color:var(--muted);font-size:12px}
.exercise-definition-form{max-width:860px}.exercise-definition-form .form-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.exercise-definition-form #id_tracking_fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.exercise-definition-form #id_tracking_fields label{display:flex;align-items:center;gap:9px;min-height:44px;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:#fbfcfb;cursor:pointer}.exercise-definition-form #id_tracking_fields input{width:20px;height:20px}.exercise-definition-form select[multiple]{min-height:150px}.media-preview{padding:11px 13px;border-radius:10px;background:var(--mint)}.media-preview a{color:var(--green);font-weight:800;text-decoration:none}.line-list-editor{display:grid;gap:7px}.line-list-editor>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.line-list-editor input{width:100%;min-height:44px;padding:9px 11px;border:1px solid #c5d0c9;border-radius:9px}.line-remove{min-width:58px;border:0;border-radius:8px;background:#f4f6f5;color:var(--muted);cursor:pointer}.line-remove:hover{background:#fae9e7;color:var(--red)}.line-add{width:max-content;margin-top:8px}.selected-test-context{display:flex;flex-direction:column;padding:15px;border-left:4px solid var(--green);border-radius:10px;background:var(--mint)}.selected-test-context small{color:var(--green);font-size:10px;font-weight:850}.selected-test-context strong{font-size:18px}.selected-test-context span{color:var(--muted);font-size:12px}.input-with-suffix{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.input-with-suffix input{border-radius:9px 0 0 9px!important}.input-with-suffix span{display:grid;place-items:center;min-height:46px;padding:0 13px;border:1px solid #c5d0c9;border-left:0;border-radius:0 9px 9px 0;background:#f3f6f4;color:var(--muted);font-weight:800}
.chip-fields>[data-chip-editor]:last-child{grid-column:1/-1}.chip-editor{display:flex!important;min-height:46px;align-items:center;gap:6px;flex-wrap:wrap;padding:6px;border:1px solid #c5d0c9;border-radius:9px;background:#fff}.chip-editor:focus-within{outline:3px solid #cde9d8;border-color:var(--green)}.chip-editor>button,.multi-selected>button{min-height:30px;padding:5px 8px;border:0;border-radius:7px;background:var(--mint);color:var(--green);font-size:10px;font-weight:800;cursor:pointer}.chip-editor>input{min-width:170px;min-height:32px!important;flex:1;border:0!important;padding:4px!important;outline:0!important}.media-source-details{margin-top:2px}.media-source-details>div{padding-top:14px}.searchable-multiselect{position:relative;display:grid;gap:8px}.multi-selected{display:flex;min-height:38px;align-items:center;gap:6px;flex-wrap:wrap}.multi-selected>small{color:var(--muted)}.searchable-multiselect>input{min-height:46px}.multi-results{position:absolute;z-index:20;top:100%;left:0;right:0;max-height:310px;overflow:auto;padding:6px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 14px 35px rgba(15,48,35,.14)}.multi-results>button{display:block;width:100%;min-height:42px;padding:8px 10px;border:0;border-radius:7px;background:#fff;color:var(--ink);text-align:left;cursor:pointer}.multi-results>button:hover,.multi-results>button:focus-visible{background:var(--mint);color:var(--green)}.multi-results>small{display:block;padding:10px;color:var(--muted)}
.upload-dropzone{display:grid!important;place-items:center;width:100%;min-height:180px;padding:24px;border:2px dashed #b7c9bf;border-radius:13px;background:#f8faf9;text-align:center;cursor:pointer;transition:.15s}.upload-dropzone:hover,.upload-dropzone.is-dragging{border-color:var(--green);background:var(--mint)}.upload-dropzone.has-file{border-style:solid;border-color:#8fc5a8}.upload-dropzone input{position:absolute;width:1px;height:1px;opacity:0}.upload-icon{display:grid;place-items:center;min-width:56px;height:38px;margin-bottom:7px;border-radius:8px;background:var(--green-dark);color:#fff;font-size:10px;font-weight:900;letter-spacing:.08em}.upload-dropzone small{color:var(--muted)}.import-upload form{display:grid!important;align-items:stretch!important}.import-upload form>.primary{justify-self:end}.import-upload button:disabled{opacity:.45;cursor:not-allowed}.import-help{margin-top:12px}.import-help summary{min-height:44px;display:flex;align-items:center;color:var(--green);font-weight:800;cursor:pointer}.import-help p{margin:0;color:var(--muted);font-size:12px}
.week-board{scrollbar-color:#87b69f #e8eeea;scrollbar-width:thin;overscroll-behavior-inline:contain}.week-board:focus-visible{outline:3px solid #79b697;outline-offset:4px}.week-empty a{opacity:.35;transition:opacity .15s}.week-day:hover .week-empty a,.week-empty a:focus-visible{opacity:1}.slot{position:relative}.free-slot{position:absolute;inset:0;display:flex!important;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;text-decoration:none}.free-slot small{opacity:0;color:var(--green);font-size:10px;font-weight:800;transition:opacity .15s}.slot-free:hover .free-slot{background:var(--mint)}.slot-free:hover .free-slot small,.free-slot:focus-visible small{opacity:1}.unavailable-label{display:block;padding:4px 6px;color:#6d7d75;font-size:10px;font-weight:750}.current-time-row>.time-col{color:var(--green);font-weight:900}.current-time-row td{box-shadow:inset 0 2px #df6156}
@media(max-width:700px){.exercise-definition-form .form-grid.two,.exercise-definition-form #id_tracking_fields{grid-template-columns:1fr}.media-technical-fields{grid-template-columns:1fr!important}.week-empty a{opacity:1}.import-upload form>.primary{width:100%}}

.form-kind-training_phase{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.form-kind-training_phase .field-name,.form-kind-training_phase .field-color,.form-kind-training_phase .field-notes,.form-kind-training_phase .color-presets,.form-kind-training_phase .form-actions{grid-column:1/-1}.color-presets{display:flex!important;align-items:center;justify-content:space-between;gap:16px;padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:#f8faf9}.color-presets>span{color:var(--muted);font-size:11px;font-weight:800}.color-presets>div{display:flex;gap:8px}.color-presets button{width:32px;height:32px;padding:0;border:3px solid #fff;border-radius:50%;background:var(--preset-color);box-shadow:0 0 0 1px #bdc9c2;cursor:pointer}.color-presets button.selected{box-shadow:0 0 0 3px var(--green)}.assessment-profile-badge{display:inline-flex;margin-top:7px;padding:5px 8px;border-radius:7px;background:var(--mint);color:var(--green);font-size:10px;font-weight:850}.onboarding-complete{padding:0}.onboarding-complete>summary{display:flex;min-height:70px;align-items:center;justify-content:space-between;padding:16px 20px;cursor:pointer;list-style:none}.onboarding-complete>summary::-webkit-details-marker{display:none}.onboarding-complete>summary>span{color:var(--green);font-size:11px;font-weight:800}.onboarding-complete .onboarding-track{padding:0 20px 18px}.plan-version-group{padding:13px 0;border-top:1px solid var(--line)}.plan-version-group>strong{display:block;margin-bottom:7px;font-size:13px}.plan-version-group .compact-row{margin:0}.main-nav a:focus-visible,.main-nav summary:focus-visible,.week-board a:focus-visible,.assessment-task a:focus-visible,.color-presets button:focus-visible{outline:3px solid #79b697;outline-offset:2px}
.plan-version-row>a{min-width:0;flex:1;color:inherit;text-decoration:none}.plan-version-row>a>div{display:flex;flex-direction:column}.plan-version-row .row-actions{display:flex;align-items:center;gap:10px}.plan-version-row .row-actions form{margin:0}.plan-version-row .text-danger{min-height:36px;padding:7px 10px}
@media(max-width:700px){.form-kind-training_phase{grid-template-columns:1fr}.form-kind-training_phase>*{grid-column:1!important}.color-presets{align-items:flex-start;flex-direction:column}.onboarding-complete .onboarding-track{padding-left:16px;padding-right:16px}}

/* Premium client plan: an ordered training brief, with media available on demand. */
.client-plan-overview{overflow:hidden}.client-plan-overview>.panel-heading{padding-bottom:12px}.portal-plan-day{border-top:1px solid var(--line)}.portal-plan-day>summary{min-height:78px;padding:15px 2px;list-style:none}.portal-plan-day>summary::-webkit-details-marker,.client-exercise-row>summary::-webkit-details-marker{display:none}.portal-plan-day>summary>div{gap:2px}.portal-plan-day>summary>div>small{font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.portal-plan-day>summary>div>strong{font-size:18px;line-height:1.25}.portal-plan-day>summary>div>span{color:var(--muted);font-size:11px}.portal-plan-day>summary>b{display:flex;align-items:center;gap:8px;color:var(--green);font-size:11px}.portal-plan-day>summary>b i{font-style:normal;transition:transform .2s}.portal-plan-day[open]>summary>b i{transform:rotate(180deg)}.portal-plan-day-content{padding-bottom:6px}
.client-session-flow{padding:4px 24px 22px}.client-training-section{position:relative;padding:22px 0 7px}.client-training-section+ .client-training-section{margin-top:8px;border-top:1px solid var(--line)}.client-training-section>header{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:start;margin-bottom:9px}.client-training-section>header>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--green-dark);color:#fff;font-size:10px;font-weight:900;letter-spacing:.04em}.client-training-section.kind-warmup>header>span{background:#5f7d6f}.client-training-section.kind-cooldown>header>span{background:#6e7e8c}.client-training-section>header>div{display:flex;flex-direction:column}.client-training-section>header strong{font-size:14px;letter-spacing:.01em}.client-training-section>header small,.client-training-section>header p{margin:1px 0 0;color:var(--muted);font-size:11px}
.client-exercise-row{margin-left:50px;border-top:1px solid #e7ece9}.client-exercise-row>summary{display:grid;grid-template-columns:35px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:72px;padding:11px 2px;cursor:pointer;list-style:none}.client-exercise-row[open]>summary{border-bottom:1px solid #edf1ee}.client-exercise-order{color:#91a098;font-size:11px;font-weight:850;font-variant-numeric:tabular-nums}.client-exercise-summary{min-width:0;display:flex;flex-direction:column;gap:4px}.client-exercise-summary>strong{font-size:15px;line-height:1.3}.client-exercise-summary>small{color:var(--muted);font-size:11px}.client-exercise-summary>small b{color:#415149;font-weight:750}.client-exercise-summary>small b::before{content:" · ";color:#a3ada7}.client-exercise-disclosure{display:flex;align-items:center;gap:7px;color:var(--green);font-size:11px;font-weight:800}.client-exercise-disclosure>span{opacity:.85}.client-exercise-row[open] .client-exercise-disclosure{transform:rotate(180deg)}.client-exercise-row[open] .client-exercise-disclosure>span{display:none}
.client-exercise-detail{display:grid;grid-template-columns:minmax(150px,210px) minmax(0,1fr);gap:18px;padding:16px 0 20px 46px}.client-exercise-detail:not(:has(.client-exercise-media)){grid-template-columns:1fr}.client-exercise-media{width:100%;height:auto;min-height:132px;aspect-ratio:16/10;border-radius:14px;background:#eaf1ed}.client-exercise-instructions{display:grid;align-content:start;gap:10px}.client-exercise-instructions>p{margin:0;color:#526159;font-size:12px;line-height:1.55}.client-exercise-technical{display:flex;flex-direction:column}.client-exercise-technical span,.client-exercise-task>small,.client-trainer-tip>span{display:block;margin-bottom:2px;color:#77877f;font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.client-exercise-task{padding:11px 13px;border-radius:11px;background:#f0f5f2}.client-exercise-task>div{display:flex;gap:6px;flex-wrap:wrap}.client-exercise-task>div>span{padding:5px 7px;border-radius:7px;background:#fff;color:var(--ink);font-size:10px}.client-trainer-tip{padding-left:11px;border-left:3px solid var(--green)}.client-trainer-tip span{color:var(--green)}
.client-workout-intro{background:linear-gradient(120deg,#f7faf8,#eef6f1)!important}.client-workout-intro>div{min-width:0}.client-workout-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.client-workout-intro h3{margin:10px 0 3px!important;font-size:25px!important}.client-workout-intro>div>p{max-width:650px;margin:0!important;font-size:12px}.client-workout-facts{display:flex;gap:7px;margin-top:12px}.client-workout-facts span{padding:5px 8px;border-radius:7px;background:#fff;color:#53635a;font-size:10px;font-weight:750}.client-plan-page{max-width:1050px}.client-plan-title{margin-bottom:18px}
@media(max-width:700px){.client-session-flow{padding:2px 14px 17px}.client-training-section{padding-top:18px}.client-training-section>header{grid-template-columns:34px minmax(0,1fr);gap:9px}.client-training-section>header>span{width:31px;height:31px}.client-exercise-row{margin-left:0}.client-exercise-row>summary{grid-template-columns:29px minmax(0,1fr) 18px;gap:8px;min-height:70px}.client-exercise-summary>strong{font-size:14px}.client-exercise-disclosure>span{display:none}.client-exercise-detail{grid-template-columns:1fr;padding:13px 0 18px 37px}.client-exercise-media{width:min(100%,360px);min-height:170px}.client-workout-intro{padding:18px 16px!important}.client-workout-intro h3{font-size:23px!important}.portal-plan-day>summary>div>strong{font-size:17px}.portal-plan-day>summary>b{font-size:0}.portal-plan-day>summary>b i{font-size:13px}}

/* Mobile navigation final polish — isolated for a simple rollback. */
.nav-svg-icon{display:block;width:20px;height:20px;overflow:visible}
@media(max-width:850px){
  body.studio-mode:not(.route-training_session_detail),body.client-mode:not(.route-client_portal_workout){padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
  .mobile-bottom,.portal-mobile-nav{height:calc(60px + env(safe-area-inset-bottom,0px));padding:2px 6px env(safe-area-inset-bottom,0px)}
  .mobile-bottom a,.portal-mobile-nav a{min-height:44px;gap:1px}
  .mobile-bottom a span,.portal-mobile-nav a span{width:34px;height:27px;font-size:inherit}
  .mobile-bottom .nav-svg-icon,.portal-mobile-nav .nav-svg-icon{width:20px;height:20px}
  .route-client_portal .client-portal{padding-top:14px}
  .route-client_portal .portal-welcome{margin-bottom:12px}
  .route-client_portal .portal-welcome .eyebrow{margin-bottom:3px}
  .route-client_portal .portal-welcome h1{margin-bottom:4px}
  .route-client_portal .portal-trainer{margin-top:8px}
}

/* Mobile/tablet workflow polish — isolated block for one-commit rollback. */
.week-scroll-hint{display:none;margin:-8px 0 10px;color:var(--muted);font-size:12px}
.exercise-filter-toggle{display:none}.exercise-filter-fields{display:contents}
.series-form{margin-top:20px}.series-form .form-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.series-form .series-preview{margin-top:4px}.series-form>.primary{justify-self:end}
.upload-control{display:grid;gap:8px}.upload-clear{justify-self:end}.upload-dropzone:focus-within{outline:3px solid #79b697;outline-offset:2px}
.workflow-focus.compact{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:15px 18px}.workflow-focus.compact .workflow-focus-main{grid-template-columns:auto auto;align-items:center;gap:4px 12px}.workflow-focus.compact .workflow-label{grid-row:1/3}.workflow-focus.compact .responsibility{grid-column:2;grid-row:1}.workflow-compact-state{grid-column:2;margin:0;color:var(--muted);font-size:12px}.workflow-focus.compact .workflow-focus-action{min-width:200px}.workflow-focus.compact .workflow-primary{min-height:44px}
.booking-details{padding:0;overflow:hidden}.booking-details>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;min-height:68px;padding:14px 18px;cursor:pointer;list-style:none}.booking-details>summary::-webkit-details-marker{display:none}.booking-details>summary>span{display:grid;gap:3px}.booking-details>summary small{color:var(--muted);font-size:12px;font-weight:500}.booking-details>summary>b{color:var(--green);transition:transform .16s ease}.booking-details[open]>summary{border-bottom:1px solid var(--line)}.booking-details[open]>summary>b{transform:rotate(180deg)}.booking-details>.form-card{margin:0;padding:20px}.booking-details>summary:focus-visible{outline:3px solid #79b697;outline-offset:-3px}
.document-content{max-height:none;overflow:visible}.questionnaire-summary{padding:24px}.questionnaire-answer{display:grid;gap:6px;padding:14px 0;border-top:1px solid var(--line)}.questionnaire-answer small{color:var(--muted);font-size:12px}.questionnaire-answer strong{font-size:15px;white-space:pre-wrap}.questionnaire-summary .form-actions{padding-top:14px;border-top:1px solid var(--line)}
.permission-groups{display:grid;gap:12px}.permission-group{min-width:0;margin:0;padding:14px;border:1px solid var(--line);border-radius:11px}.permission-group legend{padding:0 7px;font-size:14px;font-weight:850}.permission-group legend span{display:inline-flex;margin-left:7px;padding:3px 7px;border-radius:999px;background:#eef3f0;color:var(--green);font-size:9px;text-transform:uppercase}.permission-group>p{margin:0 0 10px;color:var(--muted);font-size:11px}.permission-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.permission-group label{display:flex;align-items:center;gap:9px;min-height:48px;padding:9px 10px;border:1px solid #e2e8e4;border-radius:9px;background:#fbfcfb;cursor:pointer}.permission-group label:has(input:checked){border-color:#9bc9ae;background:var(--mint)}.permission-group input{width:21px!important;height:21px!important;flex:none}.permission-group.sensitive{border-color:#c5d7ce;background:#f8fbf9}.permission-tools{justify-content:flex-end}
.form-kind-availability_exception .field-all_day{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#f8faf9}.form-kind-test_definition .field-retest_weeks{max-width:260px}
.exercise-picker-head>span{display:none}.picker-empty-note{margin:14px 0;padding:13px;border-radius:10px;background:#f3f6f4;color:var(--muted);font-size:12px}.quick-add-prescription button:disabled{cursor:not-allowed}
.free-slot:active,.week-event:active,.day-link:active,.mobile-agenda-event:active{background:var(--mint);transform:scale(.99)}
@media(max-width:850px){.mobile-agenda-event .event-copy{min-width:0}.mobile-agenda-event .booking-source{grid-column:2;width:max-content;max-width:100%;margin-top:-6px;font-size:9px}}

@media(max-width:1200px) and (min-width:851px){.exercise-filter-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.exercise-filter-fields{display:contents}.week-board{grid-auto-columns:minmax(245px,31vw)}}
@media(max-width:850px){
  .week-scroll-hint{display:block}.week-board{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:min(82vw,350px);overflow-x:auto;margin-left:-14px;margin-right:-14px;padding:2px 14px 14px;scroll-padding-inline:14px}.week-day{scroll-snap-align:start}.week-board::after{content:"";width:4px}
  .exercise-filter-bar{grid-template-columns:minmax(0,1fr) auto}.exercise-filter-bar .exercise-search{grid-column:1}.exercise-filter-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:92px}.exercise-filter-fields{display:none;grid-column:1/-1}.exercise-filter-bar.filters-open .exercise-filter-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:4px}.exercise-filter-fields>label{min-width:0}.exercise-filter-fields>button,.exercise-filter-fields>a{min-height:44px;justify-content:center}
  .workflow-focus.compact{grid-template-columns:1fr auto;padding:13px 14px}.workflow-focus.compact .workflow-focus-main{grid-template-columns:1fr}.workflow-focus.compact .workflow-label{grid-row:auto}.workflow-focus.compact .responsibility,.workflow-compact-state{grid-column:1;grid-row:auto}.workflow-focus.compact .responsibility{display:none!important}.workflow-focus.compact .workflow-focus-action{min-width:0}.workflow-focus.compact .workflow-primary{width:auto;padding-left:14px;padding-right:14px}
  .permission-group>div{grid-template-columns:1fr}.permission-group label{min-height:52px}.series-form .form-grid.two{grid-template-columns:1fr}.series-form{padding:18px}.series-form .preview-row{align-items:flex-start;flex-direction:column}.questionnaire-summary{padding:18px}.questionnaire-summary .form-actions{align-items:stretch;flex-direction:column}.questionnaire-summary .form-actions>*{width:100%;text-align:center}.booking-details>summary{min-height:72px}.booking-details>.form-card{padding:16px}
}
@media(max-width:480px){.exercise-filter-bar.filters-open .exercise-filter-fields{grid-template-columns:1fr}.bulk-tag-controls{align-items:stretch;flex-direction:column}.bulk-tag-controls .button{white-space:nowrap}.workflow-focus.compact{grid-template-columns:1fr}.workflow-focus.compact .workflow-focus-action{width:100%}.workflow-focus.compact .workflow-primary{width:100%}}
.client-notes-list{display:grid}.client-note{display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:13px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.client-note:first-child{border-top:0}.client-note>div{display:flex;min-width:0;flex-direction:column;gap:3px}.client-note small,.payment-row small{color:var(--muted)}.client-note-kind{width:max-content;padding:5px 8px;border-radius:999px;background:#edf3ef;color:var(--green);font-size:10px;font-weight:850}.client-note.important{margin:0 -10px;padding:13px 10px;border-radius:10px;background:#f4f8f6}.client-note.completed{opacity:.62}.client-note.completed strong{text-decoration:line-through}.compact-button{min-height:36px;padding:7px 10px}.payment-history-card{margin:18px 0}.payment-row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.payment-row>div{display:flex;flex-direction:column}.payment-row>span{color:var(--muted);font-size:11px}
@media(max-width:700px){.client-note{grid-template-columns:1fr auto}.client-note-kind{grid-column:1/-1}.client-note form{align-self:end}.payment-row{align-items:flex-start;flex-direction:column;gap:4px}}

/* Karta klienta: kompaktowy pulpit pracy trenera. */
.span-three,.client-grid>section:last-child{grid-column:1/-1}
.client-summary{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.client-summary-link{display:flex;min-width:0;flex-direction:column;border-radius:6px}.client-summary-link:hover strong{color:var(--green)}.client-summary-link:focus-visible,.compact-action:focus-visible,.client-booking-row:focus-visible,.row-more summary:focus-visible{outline:3px solid rgba(18,103,71,.24);outline-offset:3px}
.client-workspace-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.compact-action{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:5px 9px;border:1px solid var(--line);border-radius:8px;background:#fff;white-space:nowrap}.compact-action:hover{border-color:#a9c7b6;background:#f7faf8}.compact-empty{min-height:64px;padding:16px 8px;justify-content:center}.client-file-row{min-height:58px}.client-file-row>div:first-child{min-width:0}.client-file-row strong{overflow-wrap:anywhere}.row-more{position:relative}.row-more>summary{display:grid;place-items:center;width:34px;min-height:34px;border-radius:8px;color:var(--green);cursor:pointer;list-style:none;font-weight:850}.row-more>summary::-webkit-details-marker{display:none}.row-more>form{position:absolute;right:0;top:38px;z-index:5;padding:5px;border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:var(--shadow)}.row-more>form button{min-height:36px;padding:6px 10px;white-space:nowrap}
.client-booking-row{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(180px,1fr) auto}.client-booking-row time{display:flex;flex-direction:column}.client-booking-row time span{color:var(--green);font-size:17px;font-weight:850}.client-booking-row .booking-source{margin-top:4px;font-size:10px}.assessment-result-status{color:#9a5034;font-size:11px;font-weight:800;text-align:right}.assessment-result-status.complete{color:var(--green)}
@media(max-width:850px){.client-workspace-grid{grid-template-columns:1fr}.compact-action{min-height:44px}.client-booking-row{grid-template-columns:1fr auto}.client-booking-row time{grid-column:1}.client-booking-row>div{grid-column:1}.client-booking-row>.status{grid-column:2;grid-row:1/3}.assessment-result-status{max-width:150px}}
.client-activity-panel{max-width:1040px}.client-activity-timeline{display:flex;flex-direction:column;gap:12px;padding-top:12px}.client-activity-item{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;align-items:start;width:calc(50% - 18px);padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff}.client-activity-client{align-self:flex-start;border-left:4px solid var(--green)}.client-activity-trainer{align-self:flex-end;border-right:4px solid #6f91bd;background:#f8fafd}.client-activity-item time{display:flex;flex-direction:column;color:var(--muted);font-size:12px}.client-activity-item time strong{color:var(--ink);font-size:13px}.client-activity-copy small{display:block;margin-bottom:4px;color:var(--green);font-size:10px;font-weight:850;letter-spacing:.08em}.client-activity-trainer .client-activity-copy small{color:#496e9e}.client-activity-copy h3{margin:0;font-size:16px}.client-activity-copy p{margin:4px 0 0;color:var(--muted);font-size:13px}.client-activity-result{display:block;margin-top:7px;color:var(--ink);font-size:12px}.client-activity-link{grid-column:2;justify-self:start;min-height:36px;padding:8px 0;color:var(--green);font-size:12px;font-weight:800}.client-activity-link:focus-visible{outline:3px solid rgba(18,103,71,.24);outline-offset:3px}@media(max-width:850px){.client-activity-item{width:calc(72% - 8px)}}@media(max-width:700px){.client-activity-item{width:100%;grid-template-columns:76px minmax(0,1fr);gap:10px}.client-activity-trainer{border-right:1px solid var(--line);border-left:4px solid #6f91bd}.client-activity-link{grid-column:2}.client-activity-item time{font-size:11px}.client-activity-copy h3{font-size:15px}}
.client-login-panel{max-width:1040px}.client-login-list{display:flex;flex-direction:column}.client-login-row{display:grid;grid-template-columns:150px minmax(150px,1fr) minmax(180px,1fr);gap:18px;align-items:center;padding:16px 0;border-top:1px solid var(--line)}.client-login-row:first-child{border-top:0}.client-login-row time,.client-login-row>div{display:flex;flex-direction:column}.client-login-row time span,.client-login-row small{color:var(--muted);font-size:11px}.status.login-failed{background:#fae8e6;color:#9b3e35}@media(max-width:700px){.client-login-row{grid-template-columns:1fr auto}.client-login-row>div{grid-column:1/-1}}
.client-activity-changes{max-width:620px;margin-top:12px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}.client-activity-change-head,.client-activity-change{display:grid;grid-template-columns:minmax(85px,.7fr) minmax(100px,1fr) minmax(100px,1fr);gap:12px;padding:9px 12px}.client-activity-change-head{background:var(--surface);color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.client-activity-change{border-top:1px solid var(--line);font-size:12px}.client-activity-change strong{font-size:12px}.client-activity-change span{overflow-wrap:anywhere}@media(max-width:700px){.client-activity-change-head{display:none}.client-activity-change{grid-template-columns:1fr 1fr;gap:5px 10px}.client-activity-change strong{grid-column:1/-1}.client-activity-change span::before{display:block;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.client-activity-change span:nth-child(2)::before{content:"Przed"}.client-activity-change span:nth-child(3)::before{content:"Po zmianie"}}

.client-notices{margin-bottom:18px;padding:18px 20px;scroll-margin-top:90px}.client-notices>h2{margin:0 0 4px;font-size:15px}.client-notice{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:start;gap:12px;padding:15px 0;border-top:1px solid var(--line)}.client-notice:first-of-type{border-top:0;padding-top:10px}.client-notice:last-child{padding-bottom:0}.client-notice-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eef3f0;color:var(--green);font-size:17px;font-weight:750}.client-notice-copy h3{margin:0 0 5px;font-size:14px;line-height:1.4}.client-notice-copy p{margin:3px 0;font-size:13px;line-height:1.55;color:#465a50}.client-notice-copy small{display:block;margin-top:5px;color:var(--muted);font-size:12px;line-height:1.5}.client-notice-action{align-self:center;white-space:nowrap;font-size:12px;min-height:40px}.portal-package-notices{max-width:1100px;margin:20px auto 0}.portal-package-notices .client-notice:first-child{padding-top:0}.workflow-state-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px}.workflow-focus .workflow-state-row .responsibility{position:static;margin:0}.workflow-state-row .workflow-label{min-width:0}
@media(max-width:700px){.client-notices{padding:15px}.client-notice{grid-template-columns:32px minmax(0,1fr);gap:10px}.client-notice-icon{width:30px;height:30px}.client-notice-action{grid-column:2;justify-self:start;white-space:normal}.portal-package-notices{margin:16px 14px 0}.workflow-state-row{align-items:flex-start;flex-direction:column}}
.client-notices-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:12px}.client-notices-heading>div{display:flex;align-items:center;gap:9px}.client-notices-heading h2{margin:0;font-size:16px}.client-notices-heading p{margin:0;color:var(--muted);font-size:12px}.client-task-count{display:grid;place-items:center;min-width:29px;height:29px;padding:0 8px;border-radius:999px;background:#fff0e1;color:#9a5518;font-size:13px;font-weight:900}.client-notice>form{align-self:center;margin:0}@media(max-width:700px){.client-notices-heading{align-items:flex-start;flex-direction:column}.client-notices-heading p{padding-left:38px}}
.portal-package-planner{padding-bottom:110px}.package-planner-hero{padding:26px;border-radius:20px;background:linear-gradient(135deg,#0d6849,#164f3e);color:#fff}.package-planner-hero h1{margin:4px 0 8px;font-size:34px}.package-planner-hero>p:not(.eyebrow){max-width:670px;color:#dcece5;line-height:1.6}.package-planner-hero>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.package-planner-hero>div span{display:flex;flex-direction:column;padding:12px 14px;border:1px solid #ffffff2b;border-radius:12px;background:#ffffff0d}.package-planner-hero small{color:#b9d7cb}.package-planner-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0;margin:22px 0;list-style:none}.package-planner-steps li{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.package-planner-steps span{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:#e7ece9;font-weight:900}.package-planner-steps .done{color:var(--green-dark)}.package-planner-steps .done span{background:var(--green);color:#fff}.package-planner-form{padding:25px}.package-service-choice{display:grid;gap:7px;margin-bottom:22px}.package-planner-intro{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:start}.package-planner-intro>span{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;background:var(--mint);color:var(--green);font-weight:900}.package-planner-intro h2{margin:0 0 5px;font-size:21px}.package-planner-intro p{margin:0;color:var(--muted);line-height:1.5}.package-slot-groups{display:grid;gap:13px;margin:20px 0}.package-slot-groups fieldset{padding:15px;border:1px solid var(--line);border-radius:14px}.package-slot-groups legend{padding:0 7px;font-weight:850}.package-slot-groups fieldset>div{display:flex;flex-wrap:wrap;gap:8px}.package-slot-groups label{cursor:pointer}.package-slot-groups input{position:absolute;opacity:0;pointer-events:none}.package-slot-groups label span{display:block;min-width:68px;padding:11px 13px;border:1px solid var(--line);border-radius:10px;text-align:center;font-weight:850}.package-slot-groups input:checked+span{border-color:var(--green);background:var(--green);color:#fff;box-shadow:0 6px 14px rgba(18,103,71,.2)}.package-slot-groups input:focus-visible+span{outline:3px solid rgba(18,103,71,.25)}.package-planner-note{margin:18px 0;padding:16px;border-radius:13px;background:#f1f7f4}.package-planner-note p{margin:6px 0 0;color:#40564c;line-height:1.5}.package-preview-section{margin-top:28px;padding-top:26px;border-top:1px solid var(--line)}.package-date-list{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin:18px 0}.package-date-list>div{display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px}.package-date-list time{display:flex;flex-direction:column}.package-date-list time b{color:var(--muted);font-size:10px;text-transform:uppercase}.package-date-list time strong{font-size:16px}.package-date-list>div>span{font-size:19px;font-weight:900}.package-date-list small{color:var(--muted)}.package-conflict-choice{margin:18px 0;padding:18px;border:1px solid #e7c896;border-radius:14px;background:#fff9ef}.package-conflict-choice>p{line-height:1.5}.package-conflict-choice details{margin:12px 0;font-size:12px}.package-conflict-choice label{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:11px;background:#fff;cursor:pointer}.package-conflict-choice label input{margin-top:4px;transform:scale(1.3)}.package-conflict-choice label span{display:flex;flex-direction:column;gap:3px}.package-conflict-choice label small{color:var(--muted)}.package-conflict-choice>.button{margin-top:10px}.package-planner-confirm{margin-top:16px}
@media(max-width:700px){.portal-package-planner{padding:16px 13px 100px}.package-planner-hero{padding:20px 17px;border-radius:18px}.package-planner-hero h1{font-size:29px;line-height:1.1}.package-planner-hero>div{grid-template-columns:1fr}.package-planner-steps b{display:none}.package-planner-steps li{justify-content:center}.package-planner-form{padding:18px 14px}.package-slot-groups fieldset{padding:13px 10px}.package-slot-groups label span{min-width:64px;padding:12px 10px}.package-date-list{grid-template-columns:1fr}.package-date-list>div{grid-template-columns:54px 1fr auto}.package-planner-submit,.package-planner-confirm{min-height:52px;font-size:15px}.package-conflict-choice{padding:15px 12px}}
/* Stała współpraca klienta — odrębna od rozliczenia pakietem. */
.recurring-choice{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(180px,.5fr);gap:16px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f7faf8}.toggle-row{display:flex!important;align-items:center;gap:12px}.toggle-row input{width:22px!important;height:22px!important;flex:none}.toggle-row span{display:flex;flex-direction:column;gap:3px}.toggle-row small,.recurring-choice label>small{color:var(--muted);font-size:11px;line-height:1.45}
.recurring-client-card{display:grid;gap:14px;margin-top:18px;padding:18px 20px}.recurring-client-main{display:flex;align-items:center;justify-content:space-between;gap:12px}.recurring-client-main h2{margin:2px 0 0;font-size:19px}.recurring-client-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:13px;border-top:1px solid var(--line)}.recurring-client-details>div{display:flex;min-width:0;flex-direction:column;gap:4px}.recurring-client-details small{color:var(--muted);font-size:11px}.recurring-client-details strong{font-size:13px;line-height:1.45}.recurring-client-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.recurring-client-actions form{margin:0}.recurring-client-card.status-active{border-left:3px solid var(--green)}.recurring-client-card.status-paused{border-left:3px solid #c88b3d}
.profile-head .recurring-active{border-color:#9fc8b3;background:#f1f8f4;color:var(--green)}.recurring-secondary-action{display:flex;justify-content:flex-end;margin-top:12px}.recurring-secondary-action button{min-height:36px;padding:7px 10px}
@media(max-width:700px){.recurring-choice,.recurring-client-details{grid-template-columns:1fr}.recurring-client-card{padding:16px}.recurring-client-actions>*{flex:1}.recurring-client-actions .button,.recurring-client-actions .primary{width:100%;min-height:44px}}

/* Jednoznaczne centrum zasad odwołań. */
.cancellation-policy-page{max-width:1120px}.cancellation-current{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:22px;align-items:center;margin-bottom:18px;padding:22px 24px;border-left:4px solid var(--green)}.cancellation-current>div{display:flex;flex-direction:column;gap:4px}.cancellation-current small,.trainer-policy-effective small{color:var(--green);font-size:9px;font-weight:900;letter-spacing:.08em}.cancellation-current strong{font-size:21px}.cancellation-current span,.cancellation-current p{margin:0;color:var(--muted);font-size:12px}.cancellation-example{padding:13px 15px;border-radius:10px;background:#f2f7f4}.cancellation-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr);gap:18px;align-items:start}.cancellation-form{display:grid;gap:14px;padding:22px}.cancellation-form>.primary{justify-self:end}.policy-field-help{margin:-7px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.cancellation-behaviour{padding:22px}.cancellation-behaviour ol{display:grid;gap:0;margin:0;padding:0;list-style:none}.cancellation-behaviour li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:11px;padding:13px 0;border-top:1px solid var(--line)}.cancellation-behaviour li>span{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:var(--mint);color:var(--green);font-size:11px;font-weight:900}.cancellation-behaviour li>div{display:flex;flex-direction:column;gap:2px}.cancellation-behaviour li small{color:var(--muted);font-size:11px;line-height:1.45}.cancellation-trainers{margin-top:28px}.cancellation-trainers .section-heading{margin-bottom:13px}.cancellation-trainers h2{margin:2px 0;font-size:22px}.trainer-policy-list{display:grid;gap:10px}.trainer-policy{padding:0;overflow:hidden}.trainer-policy>summary{display:grid;grid-template-columns:minmax(220px,1fr) minmax(250px,.8fr) 20px;gap:18px;align-items:center;min-height:82px;padding:14px 20px;cursor:pointer;list-style:none}.trainer-policy>summary::-webkit-details-marker{display:none}.trainer-policy-person{display:flex;align-items:center;gap:11px}.trainer-policy-person>div,.trainer-policy-effective{display:flex;flex-direction:column}.trainer-policy-person small,.trainer-policy-effective span{color:var(--muted);font-size:11px}.trainer-policy-effective strong{font-size:13px}.trainer-policy>summary>b{color:var(--green);transition:transform .15s}.trainer-policy[open]>summary{border-bottom:1px solid var(--line)}.trainer-policy[open]>summary>b{transform:rotate(180deg)}.trainer-policy>summary:focus-visible{outline:3px solid #79b697;outline-offset:-3px}.trainer-policy-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px;background:#fbfcfb}.trainer-policy-form>.form-field:first-of-type,.trainer-policy-form>.form-actions{grid-column:1/-1}.trainer-policy-form .form-actions{justify-content:flex-end}
@media(max-width:760px){.cancellation-current,.cancellation-layout{grid-template-columns:1fr}.cancellation-current{padding:18px}.cancellation-form,.cancellation-behaviour{padding:18px}.trainer-policy>summary{grid-template-columns:1fr 18px;gap:10px}.trainer-policy-effective{grid-column:1}.trainer-policy>summary>b{grid-column:2;grid-row:1/3}.trainer-policy-form{grid-template-columns:1fr;padding:16px}.trainer-policy-form>*{grid-column:1!important}.trainer-policy-form .primary,.cancellation-form>.primary{width:100%;min-height:44px}}

/* Jasny komunikat, gdy wszystkie wejścia pakietu są już zaplanowane. */
.booking-capacity-alert{display:grid;gap:5px;padding:15px 16px;border:1px solid #e7c596;border-left:4px solid #c77b2d;border-radius:11px;background:#fffaf3}.booking-capacity-alert>strong{font-size:15px;color:#7e4819}.booking-capacity-alert p{margin:0;color:#4f5c55;font-size:12px}.booking-capacity-alert>small{color:var(--muted);font-size:11px}.booking-capacity-alert>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.booking-capacity-alert .button{min-height:38px;padding:7px 10px;font-size:11px}.booking-form-error{display:grid;gap:3px;margin:0}.booking-form-error ul{margin:0;padding-left:18px}.booking-form-error li{font-size:12px}
@media(max-width:600px){.booking-capacity-alert>div{display:grid}.booking-capacity-alert .button{width:100%;min-height:44px}.booking-form .sticky-form-actions{align-items:stretch;flex-direction:column}.booking-form .sticky-form-actions>*{width:100%}}

/* Czytelna zmiana terminu w panelu klienta. */
.reschedule-heading{margin-bottom:16px}.reschedule-heading h1{margin-bottom:4px}.reschedule-heading p{margin:0}.reschedule-current{display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:16px;padding:18px 22px;border-left:4px solid var(--green)}.reschedule-current time{display:grid;grid-template-columns:auto 1fr;align-items:end;gap:0 5px}.reschedule-current time small{grid-column:1/-1;color:var(--green);font-size:9px;font-weight:900;letter-spacing:.08em}.reschedule-current time strong{font-size:32px;line-height:1}.reschedule-current time span{padding-bottom:2px;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.reschedule-current>div{display:flex;flex-direction:column}.reschedule-current>div>small,.reschedule-trainer small{color:var(--muted);font-size:10px;font-weight:800}.reschedule-current>div>strong{font-size:20px}.reschedule-current p{margin:2px 0 0;color:var(--muted);font-size:12px}.reschedule-trainer{text-align:right}.reschedule-trainer strong{font-size:13px!important}.reschedule-card{padding:24px}.reschedule-section-heading{display:flex;gap:12px;align-items:center}.reschedule-section-heading>span{width:34px;height:34px;display:grid;flex:none;place-items:center;border-radius:11px;background:var(--green-dark);color:#fff;font-weight:900}.reschedule-section-heading h2{margin:0;font-size:20px}.reschedule-section-heading p{margin:2px 0 0;color:var(--muted);font-size:12px}.reschedule-week-nav{margin:20px 0 14px}.reschedule-date-strip{margin-bottom:18px}.reschedule-date-strip a.unavailable{opacity:.55}.reschedule-selected-day{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fbfcfb}.reschedule-selected-day>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid var(--line)}.reschedule-selected-day>header small{color:var(--green);font-size:9px;font-weight:900;letter-spacing:.06em}.reschedule-selected-day h3{margin:2px 0 0;font-size:18px}.reschedule-selected-day>header>span{padding:5px 9px;border-radius:20px;background:var(--mint);color:var(--green);font-size:9px;font-weight:850}.reschedule-period{margin-top:16px}.reschedule-period h4{margin:0 0 8px;color:var(--muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.reschedule-slot-grid label{position:relative;display:flex;min-height:62px;flex-direction:column;align-items:center;justify-content:center;border:1px solid #bfd0c6;border-radius:13px;background:#fff;color:var(--green-dark);cursor:pointer}.reschedule-slot-grid label:hover,.reschedule-slot-grid label:has(input:checked){border-color:var(--green);background:var(--mint);box-shadow:0 0 0 2px rgba(18,103,71,.08)}.reschedule-slot-grid label:focus-within{outline:3px solid rgba(18,103,71,.24);outline-offset:2px}.reschedule-slot-grid input{position:absolute;opacity:0}.reschedule-slot-grid strong{font-size:18px}.reschedule-slot-grid small{color:var(--muted);font-size:9px}.reschedule-confirm{position:sticky;bottom:78px;z-index:6;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin:22px -5px -5px;padding:15px 16px;border:1px solid #b9cec2;border-radius:14px;background:#fff;box-shadow:0 12px 35px rgba(10,52,38,.13)}.reschedule-confirm>div{display:flex;flex-direction:column}.reschedule-confirm small{color:var(--green);font-size:9px;font-weight:900;letter-spacing:.07em}.reschedule-confirm strong{font-size:15px}.reschedule-confirm span{color:var(--muted);font-size:10px}.reschedule-confirm button:disabled{cursor:not-allowed;opacity:.48}
@media(max-width:700px){.portal-booking-wizard:has(.reschedule-card){padding-top:24px}.reschedule-heading h1{font-size:31px}.reschedule-current{grid-template-columns:64px minmax(0,1fr);gap:12px;padding:15px 16px}.reschedule-current time strong{font-size:27px}.reschedule-trainer{grid-column:2;text-align:left}.reschedule-card{padding:17px 13px}.reschedule-date-strip{margin-left:-13px;margin-right:-13px;padding-left:13px;padding-right:13px}.reschedule-selected-day{margin-left:-4px;margin-right:-4px;padding:14px}.reschedule-selected-day>header{align-items:flex-start}.reschedule-selected-day>header>span{white-space:nowrap}.reschedule-slot-grid{grid-template-columns:repeat(3,1fr)}.reschedule-confirm{bottom:76px;grid-template-columns:1fr;margin-top:18px}.reschedule-confirm button{width:100%}}
@media(max-width:370px){.reschedule-slot-grid{grid-template-columns:repeat(2,1fr)}.reschedule-selected-day>header>span{display:none}}
.mobile-agenda-event[style*="--package-alert-color"]{background:color-mix(in srgb,var(--package-alert-color) 24%,#fff);border-left-color:var(--package-alert-color)}
.questionnaire-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.questionnaire-heading h1{margin-top:0}.questionnaire-pdf-button{display:grid;grid-template-columns:34px auto;grid-template-rows:auto auto;column-gap:10px;align-items:center;min-width:176px;padding:11px 15px;border:1px solid #b9d8c7;border-radius:12px;background:linear-gradient(135deg,#f6fbf8,#e5f4ec);color:var(--green-dark);text-decoration:none;box-shadow:0 5px 16px rgba(16,60,45,.08);transition:.18s ease}.questionnaire-pdf-button:hover{border-color:var(--green);transform:translateY(-1px);box-shadow:0 8px 22px rgba(16,60,45,.13)}.questionnaire-pdf-button>span{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--green);color:#fff;font-size:19px;font-weight:900}.questionnaire-pdf-button strong{font-size:13px;line-height:1.2}.questionnaire-pdf-button small{color:var(--muted);font-size:10px}.compact-language-select{display:flex;flex-direction:column;gap:4px;font-size:.78rem;color:var(--muted)}.compact-language-select select{min-width:150px}
@media(max-width:700px){.questionnaire-heading{flex-direction:column}.questionnaire-heading .questionnaire-pdf-button{width:100%}.workflow-focus-action form{display:grid;gap:8px}}
.booking-history-system-note{display:flex;gap:11px;align-items:flex-start;margin:0 0 10px;padding:12px 14px;border-radius:11px;background:#f2f6f3;border:1px solid var(--line);color:#33493e}.booking-history-system-note>span{display:grid;place-items:center;flex:none;width:25px;height:25px;border-radius:50%;background:var(--mint);color:var(--green);font-weight:900}.booking-history-system-note strong{font-size:12px}.booking-history-system-note p{margin:2px 0 0;color:var(--muted);font-size:11px;line-height:1.45}
.email-availability{display:block;margin-top:3px;font-size:12px}.email-availability.available{color:var(--green);font-weight:700}.email-availability.unavailable{color:#a43631;font-weight:700}.email-availability.checking{color:var(--muted)}.client-delete-tab{color:#9a342e!important}.client-delete-panel{border-color:#e5b8b3;background:#fffafa;padding:28px;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:36px;align-items:start}.client-delete-panel h2{margin:0 0 10px;color:#872e29}.client-delete-panel p{max-width:760px}.client-delete-form{display:grid;gap:10px;padding:20px;border:1px solid #e5b8b3;border-radius:12px;background:#fff}.client-delete-form label{font-weight:650}.client-delete-form input{width:100%;border:1px solid #c9d4cd;border-radius:9px;padding:11px 12px}.client-delete-form .danger-button{width:100%;margin-top:4px}.client-delete-form .danger-button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:800px){.client-delete-panel{grid-template-columns:1fr;padding:20px;gap:18px}}

.reschedule-mode{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#f8faf8}.reschedule-mode>div{display:flex;flex-direction:column;gap:3px}.reschedule-mode strong{font-size:13px}.reschedule-mode small{color:var(--muted);font-size:11px}.reschedule-mode .button{white-space:nowrap}.reschedule-slot-grid label.outside-standard{border-color:#d6af6e;background:#fff8eb;color:#70480d}.reschedule-slot-grid label.outside-standard:hover,.reschedule-slot-grid label.outside-standard:has(input:checked){border-color:#bd822a;background:#ffefcf;box-shadow:0 0 0 2px rgba(180,113,20,.1)}.reschedule-override-reason{display:flex;flex-direction:column;gap:6px;margin-top:18px}.reschedule-override-reason[hidden]{display:none}.reschedule-override-reason label{font-weight:750}.reschedule-override-reason textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:10px;font:inherit}.reschedule-override-reason small{color:var(--muted)}@media(max-width:700px){.reschedule-mode{align-items:stretch;flex-direction:column}.reschedule-mode .button{white-space:normal;text-align:center}}

/* Booking detail: clear hierarchy and comfortable spacing. */
.booking-action-page{max-width:1000px;display:grid;gap:20px}
.booking-action-page>.back{justify-self:start;margin:0 0 2px}
.booking-hero{padding:30px 32px}
.booking-hero-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}
.booking-hero-top .eyebrow{margin:0}
.booking-hero h1{margin:0;font-size:clamp(29px,3vw,38px)}
.booking-client-link{display:inline-block;margin:7px 0 0;color:var(--green);font-size:13px;font-weight:750;text-decoration:none}
.booking-client-link:hover{text-decoration:underline}
.booking-when{display:flex;align-items:baseline;justify-content:space-between;gap:12px 22px;flex-wrap:wrap;margin:24px 0 0;padding:18px 20px;border-radius:12px;background:#eef7f2}
.booking-when span{font-size:18px;font-weight:750;text-transform:capitalize}
.booking-when strong{font-size:27px;line-height:1.15;color:var(--green-dark);white-space:nowrap}
.booking-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:24px}
.booking-facts>div{display:grid;align-content:start;gap:5px;min-width:0;padding:0 18px;border-right:1px solid var(--line)}
.booking-facts>div:first-child{padding-left:0}
.booking-facts>div:last-child{padding-right:0;border-right:0}
.booking-facts small{color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}
.booking-facts strong{font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.booking-action-panel{padding:24px 28px;display:grid;gap:18px}
.booking-section-heading h2{font-size:19px;margin:0 0 4px}
.booking-section-heading p{margin:0;color:var(--muted);font-size:13px}
.booking-action-buttons{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.booking-action-buttons form{margin:0}
.booking-action-buttons .button,.booking-action-buttons button{min-height:46px;padding:10px 18px}
.booking-action-page .booking-details{margin:0}
.booking-action-page .booking-details>summary{padding:19px 26px;min-height:78px}
.booking-action-page .booking-details>summary strong{font-size:17px}
.booking-action-page .booking-details>summary small{font-size:13px}
.booking-action-page .booking-details>.form-card{padding:24px 26px}
.booking-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:18px 28px;flex-wrap:wrap;margin-top:12px;padding:22px 28px;border-color:#e9cfcc;box-shadow:none}
.booking-danger-zone h2{font-size:17px;margin:0 0 5px}
.booking-danger-zone p{margin:0;color:var(--muted);font-size:13px;max-width:520px}
.booking-danger-zone .danger-button{width:auto;min-height:44px;white-space:nowrap}
.booking-action-page .overdue-booking-action{margin:0}
@media(max-width:700px){
  .booking-action-page{gap:14px}
  .booking-hero{padding:22px 20px}
  .booking-when{margin-top:20px;padding:15px 16px}
  .booking-when strong{font-size:24px}
  .booking-facts{grid-template-columns:1fr;gap:13px;margin-top:20px}
  .booking-facts>div,.booking-facts>div:first-child,.booking-facts>div:last-child{padding:0;border:0}
  .booking-action-panel{padding:20px}
  .booking-action-buttons,.booking-action-buttons form,.booking-action-buttons .button,.booking-action-buttons button{width:100%}
  .booking-action-page .booking-details>summary{padding:17px 20px}
  .booking-action-page .booking-details>.form-card{padding:20px}
  .booking-danger-zone{padding:20px}
  .booking-danger-zone .danger-button{width:100%}
}

/* Week calendar absences: chronological events with a distinct visual language. */
.week-absence{display:flex;flex-direction:column;gap:3px;padding:9px 10px;border:1px solid #bca7e1;border-left:5px solid #7050ad;border-radius:8px;background:#f3edfc;color:#362454;text-decoration:none;box-shadow:0 2px 6px #3f26621a}
.week-absence:hover,.week-absence:focus-visible{background:#eae0fa;border-color:#8d70c2}
.week-absence .week-absence-time{font-size:11px;font-weight:850;color:#56358e}
.week-absence strong{font-size:12px;color:#362454}
.week-absence small{font-size:10px;color:#594b6e}
.week-absence-tag{align-self:flex-start;margin-top:3px;padding:2px 6px;border-radius:999px;background:#dfd0f5;color:#4e3180;font-size:9px;font-weight:800}
.legend .dot.absence{background:#7050ad}

/* Relay workout synchronization */
.relay-sync-panel{margin:1rem 0;border-left:4px solid #16644b;padding:1.25rem}
.relay-sync-conflict{border-left-color:#c76d20;background:#fffaf1}
.relay-sync-pending,.relay-sync-accept_remote{border-left-color:#d8a824}
.relay-sync-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.relay-sync-head h3{margin:.25rem 0}
.relay-sync-badge{font-size:.8rem;font-weight:700;text-transform:uppercase}
.relay-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0}
.relay-compare>div{padding:1rem;border:1px solid #d7e2dc;border-radius:12px;background:#fff}
.relay-compare h4{margin:0 0 .75rem}.relay-compare h4 small{display:block;font-weight:400;color:#526860}
.relay-compare-block{margin:.75rem 0;padding-top:.5rem;border-top:1px solid #e1e8e3}
.relay-compare-entry{padding:.45rem 0}.relay-compare-entry small{display:block;color:#4f655c}
.relay-sync-choices{display:flex;flex-wrap:wrap;gap:.75rem}
@media(max-width:700px){.relay-compare{grid-template-columns:1fr}}

/* Mobile day agenda renders every booking and availability exception from the server. */
.mobile-agenda-absence{border-color:#bca7e1;border-left-color:#7050ad;background:#f3edfc;color:#362454}
.mobile-agenda-absence time{color:#56358e;font-size:13px}
.mobile-agenda-absence small{color:#594b6e}
.mobile-agenda-absence .week-absence-tag{margin-top:5px}
.week-absence,.mobile-agenda-absence{min-width:0}
.week-absence .absence-content,.mobile-agenda-absence .absence-content{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
.week-absence .absence-content strong,.mobile-agenda-absence .absence-content strong{display:block;line-height:1.35;overflow-wrap:anywhere}
.week-absence .absence-content small,.mobile-agenda-absence .absence-content small{display:block;line-height:1.35;overflow-wrap:anywhere}
.week-absence .week-absence-tag,.mobile-agenda-absence .week-absence-tag{display:inline-block;max-width:100%;width:auto;line-height:1.35;white-space:normal;overflow-wrap:break-word}
.week-free,.mobile-agenda-free{position:relative;display:block;min-width:0;padding:10px 11px;border:1px solid #e6a04a;border-left:4px solid #cb6300;border-radius:9px;background:#ffe0ad;color:#4d2b0c;box-shadow:0 2px 6px #9c4e002b;text-decoration:none}
.week-free .free-mark,.mobile-agenda-free .free-mark{position:absolute;top:10px;right:11px;display:grid;place-items:center;width:18px;height:22px;color:#a94e00;font-size:20px;font-weight:700;line-height:1}
.week-free .free-copy,.mobile-agenda-free .free-copy{display:flex;flex-direction:column;align-items:stretch;gap:2px;min-width:0}
.week-free .free-copy time,.mobile-agenda-free .free-copy time{display:block;padding-right:25px;font-size:12px;font-weight:850;color:#753600;line-height:1.35;white-space:nowrap}
.week-free .free-copy strong,.mobile-agenda-free .free-copy strong{display:block;font-size:11px;font-weight:800;letter-spacing:0;color:#4d2b0c;line-height:1.3}
.week-free .free-copy small,.mobile-agenda-free .free-copy small{display:block;font-size:10px;color:#765234;line-height:1.3;overflow-wrap:anywhere}
.week-free .free-action,.mobile-agenda-free .free-action{display:block;margin-top:6px;padding-top:6px;border-top:1px solid #dda660;font-size:10px;font-weight:800;color:#904000;text-decoration:none;line-height:1.3}
a.week-free:hover,a.week-free:focus-visible,a.mobile-agenda-free:hover,a.mobile-agenda-free:focus-visible{background:#ffd293;border-color:#cb6300;color:#4d2b0c;box-shadow:0 3px 9px #9c4e0033}
@media(max-width:850px){.mobile-agenda-absence{grid-template-columns:94px minmax(0,1fr)}}
/* The day and week agendas show the same bookings, time blocks and availability exceptions. */
.week-block,.week-availability{display:grid;gap:3px;padding:9px 10px;border:1px solid #c6b8a0;border-left:5px solid #8b7654;border-radius:8px;background:#f5f1e9;color:#423521;text-decoration:none}
.week-block time,.week-availability time{font-size:11px;font-weight:850}
.week-block strong,.week-availability strong{font-size:12px}
.week-block small,.week-availability small{display:block;font-size:10px;color:#675d4d}
.week-availability{border-color:#a9c8df;border-left-color:#3177a4;background:#eff7fc;color:#1d4b68}
.week-availability small{color:#456b82}
.schedule-event-tag{display:inline-flex;width:max-content;max-width:100%;margin-top:4px;padding:2px 6px;border-radius:999px;background:#e5dccc;color:#574529;font-size:9px;font-weight:800}
.week-availability .schedule-event-tag,.mobile-agenda-availability .schedule-event-tag{background:#dceef9;color:#225d80}
.mobile-agenda-block{border-color:#c6b8a0;border-left-color:#8b7654;background:#f5f1e9;color:#423521}
.mobile-agenda-block time{color:#725b3c;font-size:13px}
.mobile-agenda-block small{color:#675d4d}
.mobile-agenda-availability{border-color:#a9c8df;border-left-color:#3177a4;background:#eff7fc;color:#1d4b68}
.mobile-agenda-availability time{color:#276789;font-size:13px}
.mobile-agenda-availability small{color:#456b82}
@media(max-width:850px){.mobile-agenda-block,.mobile-agenda-availability{grid-template-columns:94px minmax(0,1fr)}}

/* Optional planning after package assignment. */
.package-planning-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px;padding:18px 20px}
.package-planning-intro strong{font-size:17px;color:var(--ink)}
.package-planning-intro p{margin:5px 0 0;color:var(--muted);line-height:1.5}
.package-planning-intro .button{flex:none}
.package-planning-details{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.package-planning-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:72px;padding:16px 20px;cursor:pointer;list-style:none}
.package-planning-details>summary::-webkit-details-marker{display:none}
.package-planning-details>summary strong,.package-planning-details>summary small{display:block}
.package-planning-details>summary strong{font-size:17px}
.package-planning-details>summary small{margin-top:4px;color:var(--muted)}
.package-planning-chevron{font-size:23px;color:var(--green);transition:transform .2s}
.package-planning-details[open] .package-planning-chevron{transform:rotate(180deg)}
.package-planning-details .package-schedule-form{margin:0;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}
@media(max-width:650px){.package-planning-intro{display:grid;padding:17px}.package-planning-intro .button{width:100%}.package-planning-details>summary{padding:16px}}
.booking-capacity-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #d5e0d8;border-radius:16px;padding:24px;background:#fff;color:#18342b;box-shadow:0 24px 70px #09251b55}.booking-capacity-dialog::backdrop{background:#0c2116a8}.booking-capacity-dialog h2{margin:0 0 14px;font-size:21px}.booking-capacity-dialog p{line-height:1.5;margin:0 0 14px}.booking-capacity-actions{display:grid;gap:9px;margin-top:20px}.booking-capacity-actions button{min-height:44px;width:100%}
.booking-choose-card .booking-trainer,.booking-choose-card .booking-trainer-select{margin-top:18px}
.booking-package-validity{display:flex;flex-direction:column;gap:4px;margin-top:14px;padding:14px 16px;border:1px solid #b7d3c1;border-radius:14px;background:#f0f8f4}
.booking-package-validity strong{color:var(--green-dark);font-size:13px}
.booking-package-validity span{color:var(--muted);font-size:12px;line-height:1.45}
.booking-choose-card .reschedule-date-strip a.unavailable.active{opacity:1}
.booking-choose-card .reschedule-slot-grid>a{min-height:62px}
.booking-choose-card .reschedule-slot-grid>a:hover,.booking-choose-card .reschedule-slot-grid>a:focus-visible{border-color:var(--green);background:var(--mint);box-shadow:0 0 0 2px rgba(18,103,71,.08)}
.booking-choose-card .reschedule-slot-grid>a:focus-visible{outline:3px solid rgba(18,103,71,.24);outline-offset:2px}
.booking-choose-card .reschedule-slot-grid>a strong{font-size:18px}
.booking-choose-card .reschedule-slot-grid>a small{font-size:9px}
.booking-choose-card .booking-empty a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border-radius:11px;background:var(--green-dark);color:#fff;font-weight:800;text-decoration:none}
.booking-hero .booking-client-link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;margin:14px 0 0;padding:12px 20px;border-radius:13px;background:var(--green-dark);color:#fff;font-size:15px;font-weight:850;text-decoration:none;box-shadow:0 8px 20px rgba(16,60,45,.18)}
.booking-hero .booking-client-link:hover{background:var(--green);color:#fff}
.booking-hero .booking-client-link:focus-visible{outline:3px solid var(--green);outline-offset:3px}
@media(max-width:700px){.booking-hero .booking-client-link{display:flex;width:100%;min-height:56px}}
.client-search-field{position:relative}
.client-search-field #client-search{width:100%}
.client-search-field #id_client[hidden]{display:none}
.client-search-results{position:relative;z-index:5;max-height:280px;overflow-y:auto;margin-top:5px;padding:5px;border:1px solid #bed6c9;border-radius:10px;background:#fff;box-shadow:0 8px 22px #123f2920}
.client-search-results[hidden]{display:none}
.client-search-result{display:block;width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:7px;background:#fff;color:#173c2b;text-align:left;font:inherit;cursor:pointer}
.client-search-result:hover,.client-search-result:focus-visible{background:#e8f5ed;outline:2px solid #75b998;outline-offset:-2px}
.client-search-status{display:block;margin-top:6px;color:var(--muted);font-size:11px}
.global-search-results{position:absolute;z-index:90;top:calc(100% + 6px);left:0;right:0;display:grid;gap:2px;max-height:min(55vh,380px);overflow-y:auto;padding:6px;border:1px solid #c8d8ce;border-radius:11px;background:#fff;box-shadow:0 14px 32px #153a2829}
.global-search-results[hidden]{display:none}
.global-search-result{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:10px 12px;border-radius:7px;color:#173b2b;text-decoration:none}
.global-search-result strong{font-size:13px;font-weight:750}.global-search-result small{color:var(--muted);font-size:10px}
.global-search-result:hover,.global-search-result:focus-visible{background:#e8f5ed;color:#12563a;outline:2px solid #8dc8a6;outline-offset:-2px}
.global-search-message{display:block;padding:10px 12px;color:var(--muted);font-size:12px}
@media(min-width:851px){.global-search{position:relative}}

/* Password reset: readable fields and validation guidance on narrow screens. */
.password-reset-page{min-height:calc(100svh - 80px);display:grid;place-items:center;padding:32px 16px}
.password-reset-card{width:min(100%,560px);padding:clamp(24px,5vw,42px);text-align:left}
.password-reset-card .eyebrow{margin:0 0 10px;color:var(--green);font-size:11px;font-weight:850;letter-spacing:.08em}
.password-reset-card h1{margin:0 0 10px;font-size:clamp(27px,5vw,36px);line-height:1.18}
.password-reset-intro{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.password-reset-form{display:grid;gap:18px;margin-top:26px}
.password-reset-field{display:grid;gap:8px;min-width:0}
.password-reset-field label{color:var(--ink);font-size:14px;font-weight:800}
.password-reset-field input{width:100%;min-width:0;min-height:48px;padding:11px 13px;border:1px solid #bacbc0;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:16px}
.password-reset-field input:focus{outline:3px solid #cde9d8;border-color:var(--green)}
.password-reset-rules{padding:16px 18px;border:1px solid #d8e7dc;border-radius:12px;background:#f4f9f5}
.password-reset-rules h2{margin:0;color:#20553a;font-size:13px;font-weight:850}
.password-reset-rules ul{display:grid;gap:5px;margin:9px 0 0;padding-left:19px;color:#3d5748;font-size:12px;line-height:1.45;text-align:left}
.password-reset-rules li{padding-left:2px}
.password-reset-errors .errorlist{margin:0;padding-left:19px;color:#a43631;font-size:12px;line-height:1.45;text-align:left}
.password-reset-form button{min-height:50px;margin-top:2px;border-radius:10px;font-size:14px;font-weight:800}
.password-reset-link{display:grid;place-items:center;min-height:50px;margin-top:24px;text-align:center;text-decoration:none}
@media(max-width:600px){.password-reset-page{min-height:calc(100svh - 60px);padding:16px 12px}.password-reset-card{padding:26px 20px}.password-reset-form{gap:16px;margin-top:22px}.password-reset-rules{padding:14px 15px}}

.permission-group label{align-items:flex-start}.permission-group label span{display:grid;gap:5px}.permission-group label small{font-size:12px;line-height:1.5;color:var(--muted);font-weight:400}.permission-tools[hidden]{display:none!important}.staff-access-actions{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.staff-access-actions a{min-height:44px}
