:root{--bg:#0b0f14;--surface:#111820;--surface-alt:#16202c;--surface-raised:#1c2736;--primary:#1e90ff;--primary-hover:#4aaeff;--primary-glow:#1e90ff29;--primary-glow-md:#1e90ff47;--accent:#00c2d1;--accent-glow:#00c2d129;--text:#eef2f6;--text-muted:#8a99a8;--text-subtle:#4e5e6e;--border:#ffffff12;--border-strong:#ffffff21;--success:#10b981;--danger:#f87171;--radius:14px;--radius-sm:9px;--radius-xs:5px;--shadow:0 4px 20px #0006;--shadow-lg:0 12px 40px #0000008c;--transition:.18s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}input,textarea,select,button{appearance:none;font:inherit;color:inherit;background:0 0;border:none;border-radius:0}input[type=checkbox],input[type=radio]{appearance:auto}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overscroll-behavior:none;min-height:100dvh;font-family:Montserrat,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.6}.login-page{background:var(--bg);justify-content:center;align-items:center;min-height:100dvh;padding:1rem;display:flex}.login-container{background:var(--surface);width:min(900px,100%);min-height:520px;box-shadow:0 24px 64px #000000a6, 0 0 0 1px var(--border);border-radius:20px;display:flex;overflow:hidden}.login-visual{background:linear-gradient(145deg,#0b0f14 0%,#0e1620 60%,#111f2e 100%);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;display:flex;position:relative;overflow:hidden}.login-visual:before{content:"";pointer-events:none;background:radial-gradient(60% 60% at 50% 60%,#1e90ff14 0%,#0000 70%);position:absolute;inset:0}.login-visual img{opacity:.97;z-index:1;width:380px;max-width:90%;position:relative}.login-visual h1{color:#fff;letter-spacing:3px;z-index:1;font-size:1.6rem;font-weight:800;position:relative}.login-visual span{background:linear-gradient(90deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.login-visual span.rehab,.topnav-logo-rehab,.cp-logo-rehab{background:0 0;-webkit-background-clip:initial;background-clip:initial;-webkit-text-fill-color:var(--text-muted);color:var(--text-muted)}.login-visual p{color:var(--text-muted);letter-spacing:.04em;z-index:1;font-size:.82rem;position:relative}.login-card{background:#f4f6f8;flex-direction:column;flex:1;justify-content:center;min-width:0;padding:56px 48px;display:flex}.login-card h2{color:#111820;margin-bottom:4px;font-size:1.5rem;font-weight:800}.login-card .sub{color:#6b7a8a;margin-bottom:32px;font-size:.88rem}.login-form{flex-direction:column;gap:16px;display:flex}.role-toggle{background:#e5e9ee;border-radius:10px;gap:4px;padding:4px;display:flex}.role-toggle button{color:#6b7a8a;cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-radius:7px;flex:1;min-height:44px;padding:10px 8px;font-family:inherit;font-size:.85rem;font-weight:600}.role-toggle button:hover:not(.active){color:#2c3e50;background:#ffffff80}.role-toggle button.active{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;font-weight:700;box-shadow:0 4px 14px #1e90ff59}.login-form input,.login-input{color:#111820;transition:border-color var(--transition), box-shadow var(--transition);background:#fff;border:1.5px solid #dde2e8;border-radius:10px;outline:none;width:100%;padding:12px 14px;font-family:inherit;font-size:.9rem}.login-form input:focus,.login-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1e90ff1f}select.login-input{cursor:pointer}textarea.login-input{resize:vertical;min-height:70px;font-family:inherit}.login-form>button[type=submit]{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;cursor:pointer;letter-spacing:.03em;transition:all var(--transition);border:none;border-radius:10px;min-height:44px;padding:13px;font-family:inherit;font-size:.9rem;font-weight:700;box-shadow:0 6px 20px #1e90ff4d}.login-form>button[type=submit]:hover{transform:translateY(-1px);box-shadow:0 8px 28px #1e90ff73}.login-form>button[type=submit]:active{transform:translateY(0)}.login-error{color:#ff6b6b;text-align:center;margin:-4px 0 0;font-size:.85rem}.forgot-password-link{text-align:center;color:var(--text-muted);transition:color var(--transition);font-size:.84rem;text-decoration:none;display:block}.forgot-password-link:hover{color:var(--primary)}.verse-of-the-day{color:#9aa5b1;text-align:center;margin-top:24px;font-size:.8rem;font-style:italic;line-height:1.5}.invite-success-banner{color:#34d399;background:#34d3991f;border:1px solid #34d3994d;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.85rem}@media (width<=640px){.login-visual{display:none}.login-card{border-radius:20px;padding:40px 28px}}.bio-layout{flex-direction:column;min-height:100dvh;display:flex}.bio-topnav{background:var(--surface);border-bottom:1px solid var(--border);z-index:20;-webkit-backdrop-filter:blur(12px);align-items:center;gap:2rem;height:60px;padding:0 1.75rem;display:flex;position:fixed;top:0;left:0;right:0}.topnav-logo{flex:1;align-items:center;gap:.5rem;text-decoration:none;display:flex}.topnav-logo-icon{object-fit:contain;width:48px;height:48px}.topnav-logo-text{letter-spacing:.12em;color:var(--text);white-space:nowrap;font-size:1rem;font-weight:800}.topnav-logo-accent{background:linear-gradient(90deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.topnav-nav{justify-content:center;align-items:center;gap:.25rem;display:flex;position:absolute;left:50%;transform:translate(-50%)}.topnav-link{border-radius:var(--radius-sm);color:var(--text-muted);transition:all var(--transition);white-space:nowrap;cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.84rem;font-weight:500;text-decoration:none;display:flex}.topnav-link-icon{flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:flex}.topnav-link-icon svg{flex-shrink:0;width:16px;height:16px}@media (hover:hover){.topnav-link:hover{color:var(--text);background:#ffffff0d}}.topnav-link.active{background:var(--primary-glow-md);color:var(--text);font-weight:700}.topnav-link-soon{opacity:.4;cursor:default;pointer-events:none}.topnav-right{flex:1;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.topnav-bell{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-muted);cursor:pointer;transition:all var(--transition);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:flex}.topnav-bell:hover{border-color:var(--border-strong);background:var(--surface-alt);color:var(--text)}.topnav-user{position:relative}.topnav-user-btn{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);background:0 0;border:1px solid #0000;align-items:center;gap:.5rem;padding:.3rem .6rem .3rem .3rem;display:flex}.topnav-user-btn:hover{background:var(--surface-alt);border-color:var(--border-strong)}.topnav-avatar{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;letter-spacing:.02em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:.7rem;font-weight:800;display:flex}.topnav-username{color:var(--text);white-space:nowrap;font-size:.85rem;font-weight:600}.topnav-user-menu{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);min-width:160px;box-shadow:var(--shadow-lg);z-index:30;padding:.5rem;position:absolute;top:calc(100% + 8px);right:0}.topnav-user-menu-name{color:var(--text-muted);border-bottom:1px solid var(--border);margin-bottom:.25rem;padding:.25rem .5rem .5rem;font-size:.75rem;font-weight:600}.topnav-user-menu-item{width:100%;color:var(--text-muted);border-radius:var(--radius-xs);cursor:pointer;transition:all var(--transition);text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;padding:.5rem;font-family:inherit;font-size:.83rem;font-weight:600;display:flex}.topnav-user-menu-item:hover{color:var(--text);background:#ffffff0f}.bio-main{background:var(--bg);flex:1;min-height:100dvh;padding:calc(60px + 2rem) 2.5rem 3rem}.client-layout{flex-direction:column;min-height:100dvh;display:flex}.client-header-bar{background:var(--surface);border-bottom:1px solid var(--border);z-index:10;-webkit-backdrop-filter:blur(12px);justify-content:space-between;align-items:center;padding:.875rem 1.5rem;display:flex;position:sticky;top:0}.client-logo-group{align-items:center;gap:.75rem;display:flex}.logo-text{letter-spacing:.1em;text-transform:uppercase;background:linear-gradient(135deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1rem;font-weight:800}.client-main{padding:1.5rem;padding-bottom:calc(72px + env(safe-area-inset-bottom) + 1.5rem);flex:1;width:100%;max-width:700px;margin:0 auto}.bottom-nav{background:var(--surface);border-top:1px solid var(--border);height:calc(60px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);z-index:10;-webkit-backdrop-filter:blur(12px);display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-link{color:var(--text-muted);transition:color var(--transition);letter-spacing:.03em;text-transform:uppercase;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;min-height:44px;font-size:.68rem;font-weight:600;text-decoration:none;display:flex}.bottom-link span:first-child{font-size:1.25rem;line-height:1}.bottom-link.active{color:var(--primary)}.bottom-link:hover{color:var(--text)}.page{width:100%;max-width:900px;margin:0 auto}.page-title{letter-spacing:-.01em;margin-bottom:1.5rem;font-size:1.5rem;font-weight:800}.page-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.section-title{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.1em;margin:1.75rem 0 .875rem;font-size:.72rem;font-weight:700}.btn{background:linear-gradient(135deg, var(--primary), #0e7ded);color:#fff;border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.02em;transition:all var(--transition);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:.4rem;min-height:40px;padding:.6rem 1.25rem;font-family:inherit;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 4px 14px #1e90ff47}.btn:hover{background:linear-gradient(135deg, var(--primary-hover), var(--primary));transform:translateY(-1px);box-shadow:0 6px 20px #1e90ff6b}.btn:active{transform:translateY(0);box-shadow:0 2px 8px #1e90ff33}.btn-ghost{color:var(--text-muted);border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);white-space:nowrap;background:0 0;justify-content:center;align-items:center;gap:.4rem;min-height:40px;padding:.55rem 1rem;font-family:inherit;font-size:.85rem;font-weight:600;display:inline-flex}.btn-ghost:hover{color:var(--text);background:#ffffff0d;border-color:#ffffff40}.btn-ghost.small{min-height:34px;padding:.35rem .75rem;font-size:.78rem}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.875rem;margin-bottom:.75rem;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition);flex-direction:column;gap:.3rem;padding:1.25rem 1rem;display:flex}.stat-card:hover{border-color:var(--border-strong)}.stat-card.accent{background:linear-gradient(135deg,#1e90ff12,#00c2d10d);border-color:#1e90ff40}.stat-number{letter-spacing:-.02em;font-size:2rem;font-weight:800;line-height:1}.stat-card.accent .stat-number{background:linear-gradient(135deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:600}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition);padding:1.25rem}.card h4{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.75rem;font-size:.7rem;font-weight:700}.client-list{flex-direction:column;gap:.5rem;display:flex}.client-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);transition:all var(--transition);align-items:center;gap:1rem;min-height:64px;padding:.9rem 1.25rem;text-decoration:none;display:flex}.client-row:hover{background:var(--surface-alt);border-color:#1e90ff59;transform:translate(2px)}.client-avatar{background:var(--primary-glow);width:42px;height:42px;color:var(--primary);border:2px solid #1e90ff66;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:flex}.client-avatar.large{width:54px;height:54px;font-size:1.3rem}.client-info{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.client-info strong{font-size:.93rem;font-weight:700}.client-info span{color:var(--text-muted);font-size:.8rem}.client-dx-line{color:var(--primary);font-size:.75rem;font-weight:500}.client-row-right{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.chevron{color:var(--text-subtle);transition:transform var(--transition);font-size:1.2rem}.client-row:hover .chevron{color:var(--primary);transform:translate(2px)}.client-header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.client-header h2{letter-spacing:-.01em;font-size:1.35rem;font-weight:800}.back-link{color:var(--text-muted);transition:color var(--transition);cursor:pointer;align-items:center;gap:.35rem;min-height:44px;margin-bottom:1.25rem;padding:.5rem 0;font-size:.82rem;font-weight:600;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--text)}.back-link.back-link-accent{color:var(--primary)}.back-link.back-link-accent:hover{color:var(--primary-hover)}.search-input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);transition:border-color var(--transition), box-shadow var(--transition);outline:none;min-height:44px;margin-bottom:1rem;padding:.75rem 1rem;font-family:inherit;font-size:.9rem}.search-input::placeholder{color:var(--text-subtle)}.search-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.phase-badge{white-space:nowrap;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:.3rem .8rem;font-size:.68rem;font-weight:700}.phase-assessment{color:#8a99a8;background:#8a99a81f}.phase-phase-1{color:#4aaeff;background:#1e90ff21}.phase-phase-2{color:#00c2d1;background:#00c2d121}.phase-phase-3{color:#4fd1ff;background:#4fd1ff21}.phase-maintenance{color:#34d399;background:#10b98121}.phase-discharged{color:#f87171;background:#f8717121}.status-badge{text-transform:uppercase;white-space:nowrap;letter-spacing:.04em;border-radius:999px;flex-shrink:0;padding:.25rem .75rem;font-size:.68rem;font-weight:700}.status-draft{color:#8a99a8;background:#8a99a81f}.status-live{color:#34d399;background:#10b98121}.badge{background:var(--primary-glow);color:var(--primary);border-radius:999px;padding:.25rem .6rem;font-size:.7rem;font-weight:700}.phase-track{scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:.5rem 0;display:flex;overflow-x:auto}.phase-track::-webkit-scrollbar{display:none}.phase-step{min-width:70px;color:var(--text-subtle);text-align:center;letter-spacing:.03em;text-transform:uppercase;flex-direction:column;flex:1;align-items:center;gap:.5rem;font-size:.66rem;font-weight:600;display:flex;position:relative}.phase-step:before{content:"";background:var(--border-strong);z-index:0;width:100%;height:2px;position:absolute;top:9px;left:50%}.phase-step:last-child:before{display:none}.phase-dot{background:var(--surface-raised);border:2px solid var(--border-strong);z-index:1;border-radius:50%;flex-shrink:0;width:20px;height:20px;transition:all .3s}.phase-step.done:before{background:linear-gradient(90deg, var(--success), #10b98166)}.phase-step.done .phase-dot{background:var(--success);border-color:var(--success);box-shadow:0 0 0 3px #10b98126}.phase-step.done{color:var(--success)}.phase-step.current .phase-dot{background:var(--primary);border-color:var(--primary);box-shadow:0 0 0 5px var(--primary-glow)}.phase-step.current{color:var(--primary);font-weight:800}.tabs{border-bottom:1px solid var(--border);scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:0;margin-bottom:1.5rem;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{color:var(--text-muted);cursor:pointer;transition:all var(--transition);white-space:nowrap;letter-spacing:.02em;background:0 0;border:none;border-bottom:2px solid #0000;min-height:44px;margin-bottom:-1px;padding:.7rem 1.25rem;font-family:inherit;font-size:.85rem;font-weight:600}.tab:hover{color:var(--text)}.tab.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:700}.info-item{background:var(--surface-alt);border-radius:var(--radius-sm);border:1px solid var(--border);flex-direction:column;gap:.3rem;padding:.875rem 1rem;display:flex}.info-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;font-size:.68rem;font-weight:700}.doc-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--transition);align-items:center;gap:.875rem;margin-bottom:.5rem;padding:.875rem 1rem;display:flex}.doc-row:hover{border-color:var(--border-strong)}.doc-icon{font-size:1.3rem}.programme-card{cursor:default}.programme-header{cursor:pointer;justify-content:space-between;align-items:center;display:flex}.exercise-list{border-top:1px solid var(--border);flex-direction:column;gap:.875rem;margin-top:1rem;padding-top:1rem;display:flex}.exercise-row{align-items:flex-start;gap:1rem;display:flex}.exercise-num{background:var(--primary-glow);width:28px;height:28px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:800;display:flex}.exercise-detail{flex-direction:column;gap:.15rem;display:flex}.exercise-detail strong{font-size:.9rem;font-weight:700}.exercise-detail span{color:var(--accent);font-size:.78rem;font-weight:600}.movement-grid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:.75rem;display:grid}.movement-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all var(--transition);overflow:hidden}.movement-card:hover{border-color:#1e90ff66;transform:translateY(-3px);box-shadow:0 8px 24px #00000059}.movement-thumb{background:linear-gradient(135deg,#1e90ff14,#00c2d10f);justify-content:center;align-items:center;height:88px;display:flex;position:relative;overflow:hidden}.movement-thumb-video{background:linear-gradient(135deg,#10b9811a,#1d6bf314)}.movement-play-btn{width:38px;height:38px;transition:all var(--transition);background:#ffffff12;border:1.5px solid #ffffff1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.movement-play-btn:after{content:"";border:6px solid #0000;border-left:11px solid #ffffff80;border-right-width:0;margin-left:3px}.movement-card:hover .movement-play-btn{background:var(--primary-glow);border-color:#1e90ff59}.movement-card:hover .movement-play-btn:after{border-color:transparent transparent transparent var(--primary)}.movement-thumb-video .movement-play-btn:after{border-color:#0000 #0000 #0000 #10b981b3}.movement-card:hover .movement-thumb-video .movement-play-btn:after{border-color:transparent transparent transparent var(--success)}.movement-info{flex-direction:column;gap:.2rem;padding:.75rem;display:flex}.movement-info strong{font-size:.84rem;font-weight:700}.movement-info span{color:var(--text-muted);font-size:.73rem}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);background:#000000bf;justify-content:center;align-items:flex-end;padding:0;animation:.2s overlayIn;display:flex;position:fixed;inset:0}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface);border:1px solid var(--border-strong);width:100%;max-width:520px;max-height:90dvh;padding:1.75rem;padding-bottom:calc(1.75rem + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;animation:.24s cubic-bezier(.32,0,0,1) sheetUp;position:relative;overflow-y:auto}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (width>=600px){.modal-overlay{align-items:center;padding:1rem}.modal{border-radius:20px;padding-bottom:1.75rem;animation:.2s cubic-bezier(.32,0,0,1) modalIn}}@keyframes modalIn{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-close{background:var(--surface-alt);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;width:32px;height:32px;transition:all var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:.82rem;display:flex;position:absolute;top:1.25rem;right:1.25rem}.modal-close:hover{background:var(--surface-raised);color:var(--text);border-color:var(--border-strong)}.modal h3{margin:.75rem 0 .5rem;font-size:1.2rem;font-weight:800}.movement-video-placeholder{background:linear-gradient(135deg, var(--primary-glow), var(--accent-glow));border-radius:var(--radius);height:160px;color:var(--text-muted);border:1px dashed var(--border-strong);justify-content:center;align-items:center;font-size:.9rem;display:flex}.movement-video-embed{border-radius:var(--radius);background:#000;width:100%;margin-bottom:1rem;padding-top:56.25%;position:relative;overflow:hidden}.movement-video-embed iframe{border:none;width:100%;height:100%;position:absolute;inset:0}.video-close-btn{background:var(--surface-alt);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;gap:.4rem;margin-bottom:1rem;padding:.6rem;font-family:inherit;font-size:.85rem;font-weight:600;transition:background .15s,color .15s;display:flex}.video-close-btn:hover{background:var(--surface-raised);color:var(--text)}.cue-list{margin-top:1.25rem}.cue-list ul{margin-top:.5rem;padding-left:1.25rem}.cue-list li{color:var(--text-muted);margin-bottom:.5rem;font-size:.88rem;line-height:1.65}.builder-page{width:100%;max-width:960px;margin:0 auto}.builder-split-screen{z-index:50;background:var(--bg);display:flex;position:fixed;inset:60px 0 0}.builder-split-left{border-right:1px solid var(--border-strong);background:var(--bg);flex-direction:column;flex:1;min-width:0;height:100%;display:flex;overflow:hidden}.builder-split-right{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;flex:1;min-width:0;height:100%;overflow:hidden auto}.builder-split-right-inner{max-width:880px;padding:2rem 1.5rem 3rem}.builder-panel-menu-wrap{align-items:center;gap:.35rem;display:flex;position:relative}.btn-add-panel{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition);align-items:center;gap:.4rem;padding:.3rem .7rem;font-family:inherit;font-size:.78rem;font-weight:600;display:flex}.btn-add-panel:hover{color:var(--text);border-color:var(--border-strong)}.btn-add-panel.active{color:var(--primary);background:var(--primary-glow);border-color:#1e90ff66}.btn-add-panel svg{flex-shrink:0}.panel-active-chip{background:var(--primary-glow);border-radius:var(--radius-sm);color:var(--primary);cursor:pointer;transition:all var(--transition);border:1px solid #1e90ff59;align-items:center;gap:.3rem;padding:.25rem .55rem;font-family:inherit;font-size:.75rem;font-weight:600;display:flex}.panel-active-chip:hover{border-color:#1e90ff99}.panel-active-chip-x{opacity:.6;font-size:.85rem;line-height:1}.panel-active-chip:hover .panel-active-chip-x{opacity:1}.panel-menu-dropdown{z-index:120;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);min-width:260px;padding:.5rem;animation:.12s ease-out fadeIn;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #00000040}.panel-menu-heading{text-transform:uppercase;letter-spacing:.04em;color:var(--text-subtle);padding:.35rem .6rem .4rem;font-size:.68rem;font-weight:600;display:block}.panel-menu-item{border-radius:var(--radius-sm);cursor:pointer;text-align:left;width:100%;transition:all var(--transition);background:0 0;border:1px solid #0000;align-items:center;gap:.6rem;padding:.55rem .6rem;font-family:inherit;display:flex}.panel-menu-item:hover{background:var(--surface-alt);border-color:var(--border)}.panel-menu-item.active{background:var(--primary-glow);border-color:#1e90ff40}.panel-menu-icon{text-align:center;flex-shrink:0;width:1.4rem;font-size:1.1rem}.panel-menu-icon-svg{color:var(--text-muted);flex-shrink:0}.panel-menu-item-text{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.panel-menu-item-label{color:var(--text);font-size:.82rem;font-weight:600}.panel-menu-item-desc{color:var(--text-muted);font-size:.72rem}.panel-menu-check{color:var(--primary);flex-shrink:0;font-size:.85rem;font-weight:700}.assess-panel-content{flex-direction:column;gap:.75rem;padding:.75rem;display:flex}.assess-panel-header-card{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius);padding:.85rem 1rem}.assess-panel-type-row{justify-content:space-between;align-items:center;margin-bottom:.3rem;display:flex}.assess-panel-type{color:var(--text);font-size:.9rem;font-weight:700}.assess-panel-date{color:var(--text-muted);font-size:.78rem}.assess-panel-meta-row{gap:.5rem;margin-top:.25rem;font-size:.8rem;display:flex}.assess-panel-meta-label{color:var(--text-subtle);font-weight:600}.assess-panel-meta-value{color:var(--text-muted)}.assess-panel-section{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem .85rem}.assess-panel-section-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-subtle);margin-bottom:.5rem;font-size:.72rem;font-weight:700;display:block}.assess-panel-text{color:var(--text-muted);white-space:pre-wrap;margin:0;font-size:.82rem;line-height:1.55}.assess-panel-diagnosis-row{align-items:baseline;gap:.5rem;margin-bottom:.3rem;display:flex}.assess-panel-diagnosis-row:last-child{margin-bottom:0}.assess-panel-diagnosis-label{color:var(--text-subtle);min-width:5rem;font-size:.75rem;font-weight:600}.assess-panel-diagnosis-value{color:var(--text-muted);font-size:.82rem}.assess-panel-diagnosis-value.primary{color:var(--primary);font-weight:600}.assess-panel-category{margin-bottom:.6rem}.assess-panel-category:last-child{margin-bottom:0}.assess-panel-category-name{color:var(--text);margin-bottom:.3rem;font-size:.78rem;font-weight:700;display:block}.assess-panel-test-row{flex-wrap:wrap;align-items:center;gap:.5rem;padding:.2rem 0;font-size:.78rem;display:flex}.assess-panel-test-name{color:var(--text-muted);min-width:6rem}.assess-panel-test-results{gap:.3rem;display:flex}.assess-panel-test-tag{border-radius:var(--radius-xs);background:var(--surface);border:1px solid var(--border);color:var(--text-muted);padding:.1rem .4rem;font-size:.7rem;font-weight:700}.assess-panel-test-tag.positive{color:#ef4444;background:#ef44441a;border-color:#ef44444d}.assess-panel-test-notes{color:var(--text-subtle);width:100%;padding-left:6.5rem;font-size:.72rem;font-style:italic}.assess-panel-additional-test{flex-wrap:wrap;align-items:baseline;gap:.4rem;padding:.25rem 0;font-size:.8rem;display:flex}.assess-panel-additional-test-name{color:var(--text);font-weight:600}.assess-panel-additional-test-result{color:var(--text-muted)}.lib-panel{flex-direction:column;flex:1;min-height:0;display:flex}.lib-panel-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:.875rem 1rem .875rem 1.1rem;display:flex}.lib-panel-title{color:var(--text);letter-spacing:-.01em;font-size:.9rem;font-weight:700}.lib-panel-search-wrap{flex-shrink:0;padding:.75rem .875rem 0}.lib-panel-filter-chips{flex-wrap:wrap;gap:.35rem;padding:.5rem 0 .25rem;display:flex}.lib-panel-scroll{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;flex:1;overflow-y:auto}.lib-panel-scroll::-webkit-scrollbar{width:4px}.lib-panel-scroll::-webkit-scrollbar-track{background:0 0}.lib-panel-scroll::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:2px}.lib-panel-list{flex-direction:column;gap:.25rem;padding:.5rem .5rem 1rem;display:flex}.lib-panel-protocols .proto-card{flex-shrink:0}.lib-panel-protocols .proto-card-header{padding:.875rem 1rem}.lib-panel-protocols .proto-card-phases{padding:.75rem 1rem 1rem}.lib-panel-list .lib-panel-item{flex-shrink:0}.lib-panel-protocols{flex-direction:column;gap:.6rem;padding:.75rem .75rem 1.5rem;display:flex}.lib-panel-item{border-radius:var(--radius-sm);cursor:pointer;text-align:left;width:100%;transition:all var(--transition);background:0 0;border:1px solid #0000;align-items:center;gap:.75rem;padding:.55rem .65rem;font-family:inherit;display:flex}.lib-panel-item:hover{background:var(--surface-alt);border-color:var(--border)}.lib-panel-item-thumb{background:var(--surface-raised);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:34px;display:flex;overflow:hidden}.lib-panel-item-thumb img{object-fit:cover;width:100%;height:100%}.lib-panel-thumb-icon-sm{color:var(--text-subtle);font-size:.7rem}.lib-panel-item-info{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.lib-panel-item-info strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.83rem;overflow:hidden}.lib-panel-item-info span{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.73rem;overflow:hidden}.lib-panel-item-arrow{color:var(--text-subtle);flex-shrink:0;font-size:1.1rem}.lib-panel-empty{text-align:center;padding:1rem .5rem;font-size:.83rem}.lib-panel-detail{flex-direction:column;display:flex}.lib-panel-back{color:var(--primary);cursor:pointer;text-align:left;transition:color var(--transition);background:0 0;border:none;padding:.75rem 1rem .5rem;font-family:inherit;font-size:.8rem;font-weight:600}.lib-panel-back:hover{color:var(--primary-hover)}.lib-panel-video-embed{aspect-ratio:16/9;background:#000;flex-shrink:0;width:100%}.lib-panel-video-embed iframe{border:none;width:100%;height:100%;display:block}.lib-panel-thumb{aspect-ratio:16/9;background:var(--surface-raised);flex-shrink:0;width:100%;overflow:hidden}.lib-panel-thumb img{object-fit:cover;width:100%;height:100%;display:block}.lib-panel-thumb-empty{color:var(--text-subtle);flex-direction:column;justify-content:center;align-items:center;gap:.35rem;font-size:.78rem;display:flex}.lib-panel-thumb-icon{color:var(--text-subtle);font-size:1.4rem}.lib-panel-detail-body{flex-direction:column;gap:.75rem;padding:.875rem 1rem 1.25rem;display:flex}.lib-panel-detail-name{color:var(--text);margin:0;font-size:1rem;font-weight:700}.lib-panel-detail-meta{color:var(--text-muted);flex-wrap:wrap;gap:.2rem;font-size:.78rem;display:flex}.lib-panel-dot{color:var(--text-subtle)}.lib-panel-detail-desc{color:var(--text-muted);margin:0;font-size:.83rem;line-height:1.65}.lib-panel-cues{flex-direction:column;gap:.35rem;display:flex}.lib-panel-section-label{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.lib-panel-cues ul{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.lib-panel-cues li{color:var(--text-muted);padding-left:1rem;font-size:.82rem;line-height:1.5;position:relative}.lib-panel-cues li:before{content:"·";color:var(--primary);position:absolute;left:.25rem}.builder-header{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:1rem;max-width:100%;margin-bottom:1.5rem;padding-bottom:1.25rem;display:flex}.builder-name-input{min-width:200px;color:var(--text);transition:border-color var(--transition);letter-spacing:-.01em;background:0 0;border:none;border-bottom:2px solid #0000;outline:none;flex:1;padding:0;font-family:inherit;font-size:1.4rem;font-weight:800}.builder-name-input:focus{border-bottom-color:var(--primary)}.builder-name-input::placeholder{color:var(--text-subtle)}.builder-actions{flex-wrap:wrap;align-items:center;gap:.75rem;min-width:0;display:flex}.builder-meta{color:var(--text-muted);font-size:.78rem}.builder-bottom-save{justify-content:flex-end;margin-top:.5rem;padding:1.25rem 0 .5rem;display:flex}.phase-tabs-bar{border-bottom:1px solid var(--border);scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:.35rem;margin-bottom:1.25rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.phase-tabs-bar::-webkit-scrollbar{display:none}.phase-tab-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);white-space:nowrap;transition:all var(--transition);-webkit-user-select:none;user-select:none;align-items:center;gap:.4rem;min-height:40px;padding:.5rem 1rem;font-family:inherit;font-size:.85rem;font-weight:600;display:flex}.phase-tab-item:hover{border-color:var(--primary);color:var(--text)}.phase-tab-item.active{background:var(--primary-glow);color:var(--primary);border-color:#1e90ff66;font-weight:700}.phase-inline-name{color:var(--primary);background:0 0;border:none;outline:none;min-width:60px;max-width:140px;font-family:inherit;font-size:.85rem;font-weight:700}.phase-tab-x{color:var(--text-subtle);cursor:pointer;transition:color var(--transition);background:0 0;border:none;padding:0;font-size:1rem;line-height:1}.phase-tab-x:hover{color:var(--danger)}.phase-tab-add{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);color:var(--text-subtle);cursor:pointer;transition:all var(--transition);white-space:nowrap;background:0 0;min-height:40px;padding:.5rem 1rem;font-family:inherit;font-size:.85rem}.phase-tab-add:hover{border-color:var(--primary);color:var(--primary)}.builder-source-badge{color:var(--primary);background:var(--primary-glow);border:1px solid color-mix(in srgb, var(--primary) 30%, transparent);letter-spacing:.01em;border-radius:999px;padding:.2rem .65rem;font-size:.72rem;font-weight:600}.phase-meta-panel{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.75rem;margin-bottom:1.25rem;padding:1rem 1.25rem;display:flex}.phase-meta-timeframe{color:var(--primary);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;font-weight:700}.phase-meta-frequency{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;font-weight:700}.phase-meta-section{flex-direction:column;gap:.35rem;display:flex}.phase-meta-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:700}.phase-meta-list{flex-direction:column;gap:.2rem;margin:0;padding-left:1.1rem;display:flex}.phase-meta-list li{color:var(--text-muted);font-size:.83rem;line-height:1.5}.sessions-container{flex-direction:column;gap:1rem;display:flex}.empty-state{text-align:center;color:var(--text-muted);padding:2.5rem 0}.session-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.session-block-header{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.session-day-badge{background:var(--primary-glow);color:var(--primary);border:1px solid color-mix(in srgb, var(--primary) 25%, transparent);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;flex-shrink:0;padding:.22rem .6rem;font-size:.7rem;font-weight:800}.session-label-input{border:none;border-bottom:1px solid var(--border-strong);color:var(--text);transition:border-color var(--transition);background:0 0;outline:none;flex:1;padding:.25rem 0;font-family:inherit;font-size:.95rem;font-weight:700}.session-label-input:focus{border-bottom-color:var(--primary)}.builder-exercise-list{flex-direction:column;gap:.75rem;display:flex}.builder-ex-row{background:var(--surface-alt);border-radius:var(--radius-sm);border:1px solid var(--border);transition:border-color var(--transition);align-items:flex-start;gap:.75rem;padding:.875rem;display:flex}.builder-ex-row:hover{border-color:var(--border-strong)}.builder-ex-fields{flex-direction:column;flex:1;gap:.5rem;display:flex}.ex-top-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.ex-movement-name{flex:140px;font-size:.93rem;font-weight:600}.ex-field-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;align-items:center;gap:.4rem;font-size:.75rem;font-weight:700;display:flex}.small-num-input{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-xs);width:58px;color:var(--text);text-align:center;transition:border-color var(--transition);outline:none;padding:.3rem .5rem;font-family:inherit;font-size:.9rem}.small-num-input:focus{border-color:var(--primary)}.instruction-input{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;color:var(--text);transition:border-color var(--transition);outline:none;padding:.5rem .75rem;font-family:inherit;font-size:.85rem}.instruction-input:focus{border-color:var(--primary)}.instruction-input::placeholder{color:var(--text-subtle)}.add-session-btn{width:100%;margin-top:.5rem}.icon-btn{cursor:pointer;border-radius:var(--radius-xs);color:var(--text-muted);transition:all var(--transition);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:.3rem .4rem;font-size:1.1rem;line-height:1;display:flex}.icon-btn:hover{background:var(--surface-raised)}.icon-btn.danger:hover{color:var(--danger);background:#f871711a}.picker-modal{max-height:75dvh}.picker-list{-webkit-overflow-scrolling:touch;flex-direction:column;gap:.35rem;max-height:calc(75dvh - 160px);display:flex;overflow-y:auto}.picker-item{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;color:var(--text);width:100%;transition:all var(--transition);justify-content:space-between;align-items:center;gap:.75rem;min-height:50px;padding:.75rem 1rem;font-family:inherit;font-size:.88rem;display:flex;overflow:hidden}.picker-item>div:first-child{min-width:0;overflow:hidden}.picker-item strong,.picker-item span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.picker-item:hover{background:var(--surface-raised);border-color:#1e90ff66}.add-movement-form{flex-direction:column;gap:.875rem;display:flex}.form-row{flex-direction:column;gap:.4rem;display:flex}.field-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;font-size:.7rem;font-weight:700}.text-muted{color:var(--text-muted)}.tab-content{animation:.16s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.sidebar{width:68px;padding:1rem .5rem}.sidebar-top{flex-direction:column-reverse;justify-content:center;gap:.75rem}.sidebar-toggle{display:none}.nav-link{justify-content:center;gap:0;padding:.75rem}.nav-label,.sidebar-user{display:none}.sidebar-signout{justify-content:center;gap:0}.sidebar-signout .nav-label{display:none}.bio-main{margin-left:68px;padding:1.25rem 1rem 3rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.info-grid{grid-template-columns:1fr 1fr}.movement-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=420px){.stats-grid,.movement-grid{grid-template-columns:repeat(2,1fr)}.page-title{font-size:1.3rem}}.page-wide{width:100%;max-width:1100px;margin:0 auto}.card-label{text-transform:uppercase;letter-spacing:.09em;color:var(--text-muted);margin-bottom:.75rem;font-size:.68rem;font-weight:700}.stat-icon{display:none}.stat-card-blue{background:linear-gradient(135deg,#1e90ff12,#00c2d10a);border-color:#1e90ff40}.stat-card-blue .stat-number{background:linear-gradient(135deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.stat-card-cyan{background:linear-gradient(135deg,#00c2d112,#1e90ff0a);border-color:#00c2d140}.stat-card-cyan .stat-number{background:linear-gradient(135deg, var(--accent), var(--primary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.stat-card-green{background:linear-gradient(135deg,#10b98112,#34d3990a);border-color:#10b98140}.stat-card-green .stat-number{color:var(--success)}.stat-card-orange{background:linear-gradient(135deg,#fb923c12,#fdba740a);border-color:#fb923c40}.stat-card-orange .stat-number{color:#fb923c}.stat-card-compliance{background:linear-gradient(135deg,#1e90ff0d,#00c2d10a);border-color:#1e90ff33;justify-content:center;align-items:center}.stats-grid-dashboard{grid-template-columns:repeat(4,1fr)}.dashboard-hero{border-bottom:1px solid var(--border);margin-bottom:1.75rem;padding-bottom:1.5rem}.dashboard-date{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.07em;margin-bottom:.35rem;font-size:.75rem;font-weight:600}.dashboard-greeting{letter-spacing:-.02em;margin-bottom:.35rem;font-size:1.75rem;font-weight:800;line-height:1.2}.dashboard-subtitle{color:var(--text-muted);font-size:.88rem}.quick-actions-row{flex-wrap:wrap;gap:.75rem;margin:1.25rem 0 1.75rem;display:flex}.quick-action-btn{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition);white-space:nowrap;align-items:center;gap:.5rem;min-height:40px;padding:.65rem 1.1rem;font-family:inherit;font-size:.84rem;font-weight:600;display:flex}.quick-action-btn:hover{color:var(--text);background:var(--surface-alt);border-color:#1e90ff73;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.quick-action-icon{display:none}.dashboard-grid{grid-template-columns:1fr 320px;align-items:start;gap:1.5rem;display:grid}.dashboard-main,.dashboard-sidebar{flex-direction:column;gap:1rem;display:flex}.dashboard-widget{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.dashboard-section-header{justify-content:space-between;align-items:center;margin-bottom:.875rem;display:flex}.dashboard-see-all{color:var(--primary);transition:opacity var(--transition);font-size:.78rem;font-weight:600;text-decoration:none}.dashboard-see-all:hover{opacity:.75}.client-row-dashboard{min-height:68px}.client-meta-right{flex-direction:column;align-items:flex-end;gap:.3rem;display:flex}.client-last-seen{color:var(--text-subtle);font-size:.7rem;font-weight:500}.upcoming-list{flex-direction:column;gap:.5rem;display:flex}.upcoming-item{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);transition:all var(--transition);align-items:center;gap:.75rem;min-height:52px;padding:.625rem .75rem;text-decoration:none;display:flex}.upcoming-item:hover{background:var(--surface-raised);border-color:#1e90ff4d}.upcoming-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:.88rem;font-weight:800;display:flex}.upcoming-info{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.upcoming-info strong{font-size:.84rem;font-weight:700}.upcoming-info span{color:var(--text-muted);font-size:.73rem}.phase-breakdown-list{flex-direction:column;gap:.5rem;display:flex}.phase-breakdown-row{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.phase-breakdown-row:last-child{border-bottom:none}.phase-breakdown-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.phase-breakdown-name{flex:1;font-size:.84rem;font-weight:500}.phase-breakdown-count{font-size:.88rem;font-weight:800}.search-wrapper{margin-bottom:.875rem;position:relative}.search-icon{width:15px;height:15px;color:var(--text-subtle);pointer-events:none;flex-shrink:0;position:absolute;top:50%;left:.875rem;transform:translateY(-50%)}.search-input-icon{margin-bottom:0;padding-left:2.5rem}.filter-chips{flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem;display:flex}.filter-chip{background:var(--surface);border:1px solid var(--border-strong);color:var(--text-muted);cursor:pointer;transition:all var(--transition);white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:.4rem .875rem;font-family:inherit;font-size:.78rem;font-weight:600;display:inline-flex}.filter-chip:hover{color:var(--text);border-color:#ffffff38}.filter-chip.active{background:var(--primary-glow);color:var(--primary);border-color:#1e90ff66}.filter-chip-count{text-align:center;background:#ffffff1a;border-radius:999px;min-width:18px;padding:0 .35rem;font-size:.7rem}.filter-chip.active .filter-chip-count{background:#1e90ff33}.empty-state-card{background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius);text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:2.5rem 1.5rem;display:flex}.empty-state-icon{font-size:2rem}.empty-state-title{color:var(--text);font-size:.95rem;font-weight:700}.clients-count-footer{color:var(--text-subtle);margin-top:.875rem;font-size:.75rem;font-weight:500}.client-detail-header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.client-detail-avatar{border:2px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;font-size:1.4rem;font-weight:800;display:flex}.client-detail-info{flex:1;min-width:0}.client-detail-name{letter-spacing:-.01em;margin:0 0 .25rem;font-size:1.4rem;font-weight:800}.client-detail-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.75rem;margin:0;font-size:.85rem;display:flex}.client-email-link{color:var(--primary);font-weight:500;text-decoration:none}.client-email-link:hover{text-decoration:underline}.tab-icon{font-size:.85rem}.overview-stats-grid{grid-template-columns:repeat(3,1fr);gap:.875rem;margin-bottom:1rem;display:grid}.overview-stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition);flex-direction:column;gap:.3rem;padding:1.1rem 1rem;display:flex}.overview-stat:hover{border-color:var(--border-strong)}.overview-stat-value{color:var(--text);font-size:1.05rem;font-weight:800;line-height:1.2}.overview-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:600}.overview-quick-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.programme-list-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition);margin-bottom:.75rem}.programme-list-card:hover{border-color:var(--border-strong)}.programme-list-card-body{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex}.programme-list-name{margin:0 0 .25rem;font-size:.95rem;font-weight:700}.programme-list-meta{color:var(--text-muted);margin:0;font-size:.8rem}.programme-list-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;display:flex}.btn.small{min-height:34px;padding:.3rem .75rem;font-size:.8rem}.doc-icon-wrap{background:var(--primary-glow);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:1.1rem;display:flex}.client-hero{border-radius:var(--radius);background:linear-gradient(135deg,#1e90ff14,#00c2d10d);border:1px solid #1e90ff26;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;padding:1.25rem;display:flex}.client-hero-label{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.25rem;font-size:.72rem;font-weight:600}.client-hero-name{letter-spacing:-.02em;background:linear-gradient(135deg, var(--text), var(--text-muted));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.5rem;font-weight:800}.next-session-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--radius);transition:border-color var(--transition);align-items:center;gap:1rem;margin-bottom:1rem;padding:1.1rem 1.25rem;display:flex}.next-session-card:hover{border-color:#1e90ff59}.next-session-icon{flex-shrink:0;font-size:1.5rem}.next-session-info{flex:1}.next-session-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 .25rem;font-size:.68rem;font-weight:700}.next-session-date{margin:0 0 .15rem;font-size:.97rem;font-weight:700}.next-session-programme{color:var(--accent);margin:0;font-size:.82rem;font-weight:600}.bio-message-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1rem;padding:1.25rem}.bio-message-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.bio-message-icon{font-size:1rem}.bio-message-from{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.7rem;font-weight:700}.bio-message-text{color:var(--text-muted);border-left:2px solid var(--primary-glow-md);margin:0;padding-left:1rem;font-size:.9rem;font-style:italic;line-height:1.75}.compliance-svg{display:block}@media (width<=900px){.dashboard-grid{grid-template-columns:1fr}.stats-grid-dashboard{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.overview-stats-grid{grid-template-columns:1fr 1fr}.quick-actions-row{gap:.5rem}.quick-action-btn{padding:.55rem .875rem;font-size:.78rem}.dashboard-greeting{font-size:1.4rem}}@media (width<=480px){.overview-stats-grid{grid-template-columns:1fr}.stats-grid-dashboard{grid-template-columns:repeat(2,1fr)}.client-hero{flex-direction:column;gap:.75rem}}.doc-icon-wrap svg{width:17px;height:17px;color:var(--primary)}.client-session-block{margin-bottom:1.5rem}.client-session-block:last-child{margin-bottom:0}.client-session-header{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;margin-bottom:.875rem;padding-bottom:.75rem;display:flex}.client-session-name{color:var(--text);font-size:.88rem;font-weight:700}.client-exercise-row{border-bottom:1px solid var(--border);align-items:flex-start;gap:.875rem;padding:.75rem 0;display:flex}.client-exercise-row:last-child{border-bottom:none}.client-exercise-detail{flex-direction:column;flex:1;gap:.2rem;display:flex}.client-exercise-name{font-size:.9rem;font-weight:700}.client-exercise-prescription{color:var(--accent);font-size:.78rem;font-weight:600}.client-exercise-cue{color:var(--text-muted);font-size:.8rem;line-height:1.5}.video-toggle-btn{cursor:pointer;color:var(--success);border-radius:var(--radius-xs);transition:all var(--transition);white-space:nowrap;background:0 0;border:1px solid #10b98140;flex-shrink:0;padding:.15rem .5rem;font-family:inherit;font-size:.75rem;font-weight:700}.video-toggle-btn:hover{background:#10b98114}.client-video-embed{margin-top:.75rem;margin-left:calc(28px + .875rem)}.client-phase-tabs{scrollbar-width:none;border-bottom:1px solid var(--border);gap:.35rem;margin-bottom:1.25rem;padding-bottom:.75rem;display:flex;overflow-x:auto}.client-phase-tabs::-webkit-scrollbar{display:none}.client-phase-tab{border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:all var(--transition);background:0 0;min-height:34px;padding:.4rem .875rem;font-family:inherit;font-size:.82rem;font-weight:600}.client-phase-tab:hover{color:var(--text);border-color:var(--border-strong)}.client-phase-tab.active{background:var(--primary-glow);color:var(--primary);border-color:#1e90ff66;font-weight:700}.prog-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition);margin-bottom:.875rem;overflow:hidden}.prog-card:hover{border-color:var(--border-strong)}.prog-card-header{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.25rem;display:flex}.prog-card-title{margin:0 0 .2rem;font-size:.97rem;font-weight:700}.prog-card-meta{color:var(--text-muted);margin:0;font-size:.8rem}.prog-card-right{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.prog-expand-chevron{color:var(--text-muted);transition:transform var(--transition);-webkit-user-select:none;user-select:none;font-size:.75rem;font-weight:700}.prog-card-body{border-top:1px solid var(--border);padding:0 1.25rem 1.25rem}.stat-card-blue{border-left:3px solid var(--primary)}.stat-card-cyan{border-left:3px solid var(--accent)}.stat-card-green{border-left:3px solid var(--success)}.stat-card-orange{border-left:3px solid #fb923c}.stat-card-danger{border-left:3px solid var(--danger);background:linear-gradient(135deg,#f8717114,#f871710a)}.stat-card-danger .stat-number{color:var(--danger)}.client-row-concern{background:linear-gradient(90deg,#f871710d,#0000)!important;border-color:#f8717173!important}.client-row-concern:hover{border-color:#f87171b3!important}.alerts-banner{border-radius:var(--radius);background:linear-gradient(135deg,#f8717112,#fb923c0d);border:1px solid #f8717140;margin-bottom:1.5rem;padding:1rem 1.25rem}.alerts-banner-header{align-items:center;gap:.75rem;margin-bottom:.875rem;display:flex}.alerts-banner-title{text-transform:uppercase;letter-spacing:.07em;color:var(--danger);font-size:.8rem;font-weight:800}.alerts-banner-count{color:var(--danger);background:#f8717126;border-radius:999px;padding:.15rem .55rem;font-size:.72rem;font-weight:700}.alerts-list{flex-direction:column;gap:.5rem;display:flex}.alert-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.875rem;padding:.75rem .875rem;display:flex}.alert-item-compact{background:var(--surface-alt)}.alert-item-left{flex:1;align-items:flex-start;gap:.625rem;min-width:0;display:flex}.alert-type-badge{text-transform:uppercase;letter-spacing:.06em;border-radius:var(--radius-xs);white-space:nowrap;flex-shrink:0;padding:.2rem .5rem;font-size:.65rem;font-weight:800}.alert-type-pain{color:var(--danger);background:#f8717126;border:1px solid #f8717140}.alert-type-concern{color:#fb923c;background:#fb923c26;border:1px solid #fb923c40}.alert-item-body{flex-direction:column;gap:.15rem;min-width:0;display:flex}.alert-item-client{font-size:.88rem;font-weight:700}.alert-item-exercise{color:var(--text-muted);font-size:.85rem}.alert-item-message{color:var(--text-muted);margin:.2rem 0 0;font-size:.82rem;font-style:italic;line-height:1.5}.alert-item-right{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.alert-item-time{color:var(--text-subtle);white-space:nowrap;font-size:.72rem;font-weight:500}.alert-resolve-btn{border:1px solid var(--border-strong);width:28px;height:28px;color:var(--text-subtle);cursor:pointer;transition:all var(--transition);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;display:flex}.alert-resolve-btn:hover{border-color:var(--success);color:var(--success);background:#10b9811a}.client-alert-dot{background:var(--danger);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:.62rem;font-weight:800;display:inline-flex}.tab-alert-dot{background:var(--danger);vertical-align:middle;border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-left:6px;display:inline-block}.client-alerts-section{border-radius:var(--radius);background:linear-gradient(135deg,#f871710f,#fb923c0a);border:1px solid #f8717133;margin-bottom:1.25rem;padding:.875rem 1rem}.client-alerts-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.client-alerts-title{text-transform:uppercase;letter-spacing:.08em;color:var(--danger);font-size:.72rem;font-weight:800}.phase-control-bar{border-top:1px solid var(--border);background:var(--surface-alt);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1.25rem;display:flex}.phase-control-left{flex-direction:column;flex:1;gap:.5rem;min-width:0;display:flex}.phase-control-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.65rem;font-weight:700}.phase-control-phases{flex-wrap:wrap;gap:.35rem;display:flex}.phase-control-pill{border:1px solid var(--border-strong);color:var(--text-muted);cursor:pointer;transition:all var(--transition);white-space:nowrap;background:0 0;border-radius:999px;padding:.3rem .7rem;font-family:inherit;font-size:.75rem;font-weight:600}.phase-control-pill:hover{border-color:var(--primary);color:var(--text)}.phase-control-pill.active{background:var(--primary-glow);color:var(--primary);border-color:#1e90ff73;font-weight:700}.phase-control-pill.done{color:var(--success);background:#10b98114;border-color:#10b9814d}.phase-control-final{color:var(--text-subtle);font-size:.78rem;font-weight:500}.client-phase-journey{scrollbar-width:none;border-bottom:1px solid var(--border);gap:0;margin-bottom:1.25rem;padding:1rem 0 1.25rem;display:flex;position:relative;overflow-x:auto}.client-phase-journey::-webkit-scrollbar{display:none}.journey-phase{opacity:.45;flex-direction:column;flex:1;align-items:center;gap:.5rem;min-width:80px;display:flex;position:relative}.journey-phase:before{content:"";background:var(--border-strong);z-index:0;width:100%;height:2px;position:absolute;top:16px;left:50%}.journey-phase:last-child:before{display:none}.journey-phase.done{opacity:1}.journey-phase.done:before{background:var(--success)}.journey-phase.active{opacity:1}.journey-phase.active:before{background:var(--border-strong)}.journey-phase-dot{background:var(--surface-raised);border:2px solid var(--border-strong);width:32px;height:32px;color:var(--text-muted);z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.72rem;font-weight:800;transition:all .3s;display:flex}.journey-phase.done .journey-phase-dot{background:var(--success);border-color:var(--success);color:#fff;font-size:.85rem}.journey-phase.active .journey-phase-dot{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 0 0 5px var(--primary-glow)}.journey-phase-name{color:var(--text-muted);text-align:center;text-transform:uppercase;letter-spacing:.04em;font-size:.63rem;font-weight:600;line-height:1.3}.journey-phase.active .journey-phase-name{color:var(--primary);font-weight:800}.journey-phase.done .journey-phase-name{color:var(--success)}.journey-locked-icon{font-size:.65rem}.active-phase-header{background:var(--surface-alt);border-radius:var(--radius-sm);border:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;padding:1rem;display:flex}.active-phase-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.2rem;font-size:.65rem;font-weight:700;display:block}.active-phase-name{letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:800}.active-phase-progress{flex-direction:column;flex-shrink:0;align-items:flex-end;display:flex}.progress-fraction{background:linear-gradient(135deg, var(--primary), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.4rem;font-weight:800;line-height:1}.progress-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:.1rem;font-size:.65rem;font-weight:600}.client-session-header{flex-wrap:wrap}.session-complete-btn{border:1.5px solid var(--border-strong);color:var(--text-muted);cursor:pointer;transition:all var(--transition);white-space:nowrap;background:0 0;border-radius:999px;flex-shrink:0;margin-left:auto;padding:.3rem .75rem;font-family:inherit;font-size:.75rem;font-weight:700}.session-complete-btn:hover{border-color:var(--success);color:var(--success);background:#10b9810f}.session-complete-btn.completed{border-color:var(--success);color:var(--success);background:#10b9811a}.client-session-block.session-done .client-session-header{opacity:.65}.client-session-block.session-done .session-day-badge{color:var(--success);background:#10b9811f;border-color:#10b98140}.pain-report-btn{color:var(--danger);border-radius:var(--radius-xs);cursor:pointer;transition:all var(--transition);white-space:nowrap;background:0 0;border:1px solid #f8717140;flex-shrink:0;padding:.15rem .55rem;font-family:inherit;font-size:.72rem;font-weight:700}.pain-report-btn:hover{border-color:var(--danger);background:#f871711a}.pain-report-textarea{background:var(--surface-alt);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;color:var(--text);resize:vertical;transition:border-color var(--transition);outline:none;padding:.75rem;font-family:inherit;font-size:.88rem;line-height:1.65}.pain-report-textarea:focus{border-color:var(--danger)}.pain-report-textarea::placeholder{color:var(--text-subtle)}.pain-submitted-icon{width:52px;height:52px;color:var(--success);background:#10b98126;border:2px solid #10b9814d;border-radius:50%;justify-content:center;align-items:center;margin:0 auto;font-size:1.4rem;display:flex}.prog-card-body{padding-top:1rem}.pain-scale-heading{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:.75rem;font-size:.75rem;font-weight:700}.pain-scale-grid{grid-template-columns:repeat(5,1fr);gap:.4rem;margin-bottom:.875rem;display:grid}.pain-scale-btn{background:var(--surface-alt);border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);flex-direction:column;align-items:center;gap:.15rem;min-height:64px;padding:.55rem .25rem .4rem;font-family:inherit;display:flex}.pain-scale-btn:hover{border-color:var(--border-strong);background:var(--surface-raised);transform:translateY(-2px)}.pain-scale-emoji{font-size:1.35rem;line-height:1}.pain-scale-num{color:var(--text-muted);font-size:.75rem;font-weight:800;line-height:1}.pain-scale-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-subtle);white-space:nowrap;font-size:.55rem;font-weight:700;line-height:1}.pain-scale-btn.selected.scale-low{border-color:var(--success);background:#10b9811f}.pain-scale-btn.selected.scale-low .pain-scale-num{color:var(--success)}.pain-scale-btn.selected.scale-mid{background:#fb923c1f;border-color:#fb923c}.pain-scale-btn.selected.scale-mid .pain-scale-num{color:#fb923c}.pain-scale-btn.selected.scale-high{border-color:var(--danger);background:#f871711f}.pain-scale-btn.selected.scale-high .pain-scale-num{color:var(--danger)}.pain-scale-btn.scale-low:hover{border-color:#10b98173}.pain-scale-btn.scale-mid:hover{border-color:#fb923c73}.pain-scale-btn.scale-high:hover{border-color:#f8717173}.pain-scale-summary{background:var(--surface-alt);border-radius:var(--radius-sm);border:1px solid var(--border);align-items:center;gap:.625rem;padding:.6rem .875rem;display:flex}.pain-scale-summary-label{color:var(--text-muted);font-size:.8rem;font-weight:600}.pain-scale-display{white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:.25rem;padding:.2rem .55rem;font-size:.72rem;font-weight:800;display:inline-flex}.pain-scale-display.scale-low{color:var(--success);background:#10b9811f;border:1px solid #10b98140}.pain-scale-display.scale-mid{color:#fb923c;background:#fb923c1f;border:1px solid #fb923c40}.pain-scale-display.scale-high{color:var(--danger);background:#f871711f;border:1px solid #f8717140}.phase-weeks-control{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.phase-weeks-unit{color:var(--text-muted);font-size:.8rem;font-weight:600}.phase-repeat-note{background:var(--surface-alt);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);color:var(--text-muted);align-items:center;gap:.5rem;margin-top:.875rem;padding:.625rem .875rem;font-size:.82rem;display:flex}.phase-repeat-note strong{color:var(--text)}.phase-repeat-icon{color:var(--primary);flex-shrink:0;font-size:1rem}.week-block{border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition);margin-bottom:.75rem;overflow:hidden}.week-block.week-current{box-shadow:0 0 0 3px var(--primary-glow);border-color:#1e90ff66}.week-block.week-done{background:#10b98105;border-color:#10b9814d}.week-header{cursor:pointer;background:var(--surface-alt);transition:background var(--transition);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:.75rem;padding:.875rem 1rem;display:flex}.week-header:hover{background:var(--surface-raised)}.week-block.week-current .week-header{background:linear-gradient(135deg,#1e90ff14,#00c2d10d)}.week-block.week-done .week-header{background:#10b9810d}.week-header-left{align-items:center;gap:.625rem;display:flex}.week-badge{color:var(--text);font-size:.82rem;font-weight:800}.week-block.week-current .week-badge{color:var(--primary)}.week-block.week-done .week-badge{color:var(--success)}.week-current-label{text-transform:uppercase;letter-spacing:.07em;color:var(--primary);background:var(--primary-glow);border:1px solid #1e90ff47;border-radius:999px;padding:.15rem .5rem;font-size:.65rem;font-weight:800}.week-complete-check{text-transform:uppercase;letter-spacing:.07em;color:var(--success);background:#10b9811a;border:1px solid #10b98147;border-radius:999px;padding:.15rem .5rem;font-size:.65rem;font-weight:800}.week-header-right{align-items:center;gap:.625rem;display:flex}.week-progress-text{color:var(--text-muted);font-size:.75rem;font-weight:600}.week-block.week-done .week-progress-text{color:var(--success)}.week-expand-chevron{color:var(--text-muted);font-size:.7rem;font-weight:700}.week-block .client-session-block{border-left:none;border-right:none;border-top:1px solid var(--border);border-bottom:none;border-radius:0;margin:0;padding:1rem}.week-block .client-session-block:last-child{border-bottom:none}.new-client-form{flex-direction:column;gap:.875rem;display:flex}.nc-row-2{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@media (width<=420px){.nc-row-2{grid-template-columns:1fr}}.post-save-prompt{border-radius:var(--radius);background:linear-gradient(135deg,#1e90ff17,#00c2d10f);border:1px solid #1e90ff47;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:.875rem 1.25rem;animation:.2s fadeIn;display:flex}.post-save-prompt-body{flex-direction:column;gap:.2rem;display:flex}.post-save-prompt-title{color:var(--text);font-size:.88rem;font-weight:700}.post-save-prompt-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.alert-type-appointment{color:var(--accent);background:#00c2d11f;border:1px solid #00c2d147}.appt-request-banner{border-radius:var(--radius);background:linear-gradient(135deg,#00c2d112,#10b9810d);border:1px solid #00c2d140;margin-bottom:1.25rem;padding:.875rem 1rem}.appt-request-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.appt-request-title{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-size:.72rem;font-weight:800}.appt-request-count{color:var(--accent);background:#00c2d126;border-radius:999px;padding:.15rem .55rem;font-size:.72rem;font-weight:700}.client-appt-dot{background:var(--accent);color:#000;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:.62rem;font-weight:800;display:inline-flex}.client-selfie-dot{background:#f8c400;border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.client-row-appt{background:linear-gradient(90deg,#00c2d10a,#0000)!important;border-color:#00c2d159!important}.client-row-appt:hover{border-color:#00c2d199!important}.phase-complete-banner{border-radius:var(--radius);background:linear-gradient(135deg,#10b9811a,#00c2d112);border:1.5px solid #10b98159;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:1rem 1.25rem;animation:.25s fadeIn;display:flex}.phase-complete-banner.requested{background:linear-gradient(135deg,#10b9810f,#00c2d10a);border-color:#10b98133}.phase-complete-body{flex:1;align-items:flex-start;gap:.75rem;min-width:0;display:flex}.phase-complete-icon{flex-shrink:0;font-size:1.5rem;line-height:1}.phase-complete-title{color:var(--success);margin:0 0 .2rem;font-size:.95rem;font-weight:800}.phase-complete-sub{color:var(--text-muted);margin:0;font-size:.82rem;line-height:1.55}.proto-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition);overflow:hidden}.proto-card:hover{border-color:var(--border-strong)}.proto-card-custom{border-color:#00c2d140}.proto-card-header{padding:1.25rem}.proto-card-title-row{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.5rem;display:flex}.proto-card-name{letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:800}.proto-source-badge{text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;background:var(--primary-glow);color:var(--primary);border:1px solid #1e90ff40;border-radius:999px;flex-shrink:0;padding:.2rem .6rem;font-size:.65rem;font-weight:700}.proto-source-badge.custom{color:var(--accent);background:#00c2d11f;border-color:#00c2d147}.proto-source-badge.chronic{color:#a78bfa;background:#7c4dff1f;border-color:#7c4dff47}.proto-card-chronic{border-color:#7c4dff38}.proto-diagnosis-row{flex-wrap:wrap;gap:.35rem;margin-bottom:.875rem;display:flex}.proto-diagnosis-tag{border-radius:var(--radius-xs);background:var(--surface-alt);border:1px solid var(--border-strong);color:var(--text-muted);padding:.2rem .55rem;font-size:.72rem;font-weight:600}.proto-card-footer{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.proto-phase-count{color:var(--text-muted);font-size:.78rem;font-weight:600}.proto-card-phases{border-top:1px solid var(--border);flex-direction:column;gap:.5rem;padding:.875rem 1.25rem 1.25rem;display:flex}.proto-phase-card{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.proto-phase-header{cursor:pointer;transition:background var(--transition);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.proto-phase-header:hover{background:var(--surface-raised)}.proto-phase-header-left{align-items:center;gap:.75rem;min-width:0;display:flex}.proto-phase-num{background:var(--primary-glow);width:26px;height:26px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.72rem;font-weight:800;display:flex}.proto-phase-name{font-size:.88rem;font-weight:700;display:block}.proto-phase-meta{color:var(--text-muted);margin-left:.4rem;font-size:.72rem;font-weight:500}.proto-session-pills{flex-wrap:wrap;gap:.3rem;display:flex}.proto-session-pill{border-radius:var(--radius-xs);background:var(--surface);border:1px solid var(--border-strong);color:var(--text-muted);white-space:nowrap;padding:.15rem .5rem;font-size:.65rem;font-weight:600}.proto-session-pill-more{background:var(--primary-glow);color:var(--primary);border-color:#1e90ff40}.proto-phase-chevron{color:var(--text-muted);flex-shrink:0;font-size:.68rem;font-weight:700}.proto-phase-body{border-top:1px solid var(--border);flex-direction:column;gap:.75rem;margin-top:0;padding:0 1rem 1rem;display:flex}.proto-detail-section{flex-direction:column;gap:.3rem;padding-top:.75rem;display:flex}.proto-detail-label{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);font-size:.65rem;font-weight:700}.proto-detail-list{flex-direction:column;gap:.15rem;margin:0;padding-left:1.1rem;display:flex}.proto-detail-list li{color:var(--text-muted);font-size:.83rem;line-height:1.5}.proto-session-detail{border-bottom:1px solid var(--border);align-items:center;gap:.5rem;padding:.3rem 0;display:flex}.proto-session-detail:last-child{border-bottom:none}.proto-ex-count{color:var(--text-subtle);margin-left:auto;font-size:.72rem}.proto-ex-category{border:1px solid var(--border);border-radius:8px;overflow:hidden}.proto-ex-category-header{cursor:pointer;transition:background var(--transition);justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .875rem;display:flex}.proto-ex-category-header:hover{background:var(--surface-raised)}.proto-ex-category-name{color:var(--text);font-size:.82rem;font-weight:700}.proto-ex-list{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.proto-ex-item{border-bottom:1px solid var(--border);flex-direction:column;gap:.15rem;padding:.5rem .875rem;display:flex}.proto-ex-item:last-child{border-bottom:none}.proto-ex-name{color:var(--text);font-size:.83rem;font-weight:600}.proto-ex-meta{color:var(--primary);font-size:.73rem;font-weight:600}.proto-ex-instruction{color:var(--text-muted);font-size:.75rem;line-height:1.4}.field-label-hint{color:var(--text-subtle);text-transform:none;letter-spacing:0;margin-left:.25rem;font-size:.65rem;font-weight:500}.proto-diag-chips{flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem;display:flex}.proto-diag-chip{background:var(--primary-glow);color:var(--primary);border:1px solid #1e90ff47;border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .5rem .25rem .65rem;font-size:.78rem;font-weight:600;display:inline-flex}.proto-diag-chip button{cursor:pointer;color:var(--primary);opacity:.7;transition:opacity var(--transition);background:0 0;border:none;padding:0;font-size:.9rem;line-height:1}.proto-diag-chip button:hover{opacity:1}.proto-diag-suggestions{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow);z-index:50;max-height:240px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden auto}.proto-diag-suggestion{text-align:left;border:none;border-bottom:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;transition:background var(--transition);background:0 0;padding:.6rem .875rem;font-family:inherit;font-size:.84rem}.proto-diag-suggestion:last-child{border-bottom:none}.proto-diag-suggestion:hover{background:var(--surface-alt)}.proto-diag-taken{color:var(--danger);font-size:.68rem;font-weight:700}.proto-form-phase{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:.75rem;padding:1rem}.proto-form-phase-header{align-items:flex-start;gap:.75rem;display:flex}.proto-form-session{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xs);margin-bottom:.5rem;padding:.75rem}.quick-find-overlay{align-items:flex-start;padding-top:clamp(3rem,10vh,8rem)}.quick-find-modal{background:var(--surface);border:1px solid var(--border-strong);border-radius:16px;width:100%;max-width:560px;animation:.18s cubic-bezier(.32,0,0,1) modalIn;overflow:hidden;box-shadow:0 24px 64px #00000080}.quick-find-search{border-bottom:1px solid var(--border);color:var(--text-muted);align-items:center;gap:.75rem;padding:.9rem 1rem;display:flex}.quick-find-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:1rem}.quick-find-input::placeholder{color:var(--text-muted)}.quick-find-esc{background:var(--surface-alt);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:5px;padding:.1rem .4rem;font-family:inherit;font-size:.7rem}.quick-find-list{max-height:340px;margin:0;padding:.35rem;list-style:none;overflow-y:auto}.quick-find-item{cursor:pointer;transition:background var(--transition);border-radius:10px;align-items:center;gap:.75rem;padding:.6rem .75rem;display:flex}.quick-find-item.active,.quick-find-item:hover{background:var(--surface-alt)}.quick-find-avatar{border:1.5px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:700;display:flex}.quick-find-info{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.quick-find-name{color:var(--text);font-size:.9rem;font-weight:600}.quick-find-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.quick-find-phase{flex-shrink:0;font-size:.72rem;font-weight:700}.quick-find-empty{text-align:center;color:var(--text-muted);margin:0;padding:2rem 1rem;font-size:.85rem}.quick-find-footer{border-top:1px solid var(--border);color:var(--text-muted);gap:1rem;padding:.6rem 1rem;font-size:.7rem;display:flex}.quick-find-footer kbd{background:var(--surface-alt);border:1px solid var(--border);border-radius:4px;margin-right:.25rem;padding:.05rem .35rem;font-family:inherit;font-size:.65rem}.quick-find-trigger{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-muted);cursor:pointer;transition:all var(--transition);text-align:left;align-items:center;gap:.6rem;margin-bottom:.75rem;padding:.5rem .75rem;font-family:inherit;font-size:.82rem;display:flex}.quick-find-trigger:hover{background:var(--surface-raised);color:var(--text);border-color:var(--border-strong)}.quick-find-trigger-kbd{background:var(--surface);border:1px solid var(--border);border-radius:4px;margin-left:auto;padding:.05rem .35rem;font-family:inherit;font-size:.65rem}.gender-toggle{gap:.5rem;display:flex}.gender-btn{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition);flex:1;padding:.55rem 1rem;font-family:inherit;font-size:.88rem;font-weight:500}.gender-btn:hover{border-color:var(--border-strong);color:var(--text)}.gender-btn.active{background:var(--primary-glow,#4aaeff1f);color:#4aaeff;border-color:#4aaeff;font-weight:700}.dash-page{flex-direction:column;gap:1.25rem;width:100%;display:flex}.dash-hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem;display:flex}.dash-date{color:var(--text-subtle);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.35rem;font-size:.68rem;font-weight:700}.dash-greeting{letter-spacing:-.02em;margin-bottom:.3rem;font-size:1.85rem;font-weight:800;line-height:1.15}.dash-subtitle{color:var(--text-muted);font-size:.875rem}.dash-hero-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.625rem;display:flex}.dash-btn-primary{background:linear-gradient(135deg, var(--primary), var(--accent));box-shadow:0 4px 16px #1e90ff52}.stats-banner{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);gap:0;display:flex;overflow:hidden}.stats-banner-summary{border-right:1px solid var(--border);background:linear-gradient(135deg,#00c2d10f,#1e90ff0a);flex-shrink:0;min-width:220px;padding:1.25rem 1.5rem}.stats-banner-label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-subtle);margin-bottom:.5rem;font-size:.65rem;font-weight:700}.stats-banner-main{align-items:baseline;gap:.5rem;margin-bottom:.25rem;display:flex}.stats-banner-num{letter-spacing:-.03em;background:linear-gradient(135deg, var(--accent), var(--primary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.75rem;font-weight:800;line-height:1}.stats-banner-unit{color:var(--text);font-size:1rem;font-weight:600}.stats-banner-sub{color:var(--text-muted);margin-bottom:.875rem;font-size:.78rem}.btn-needs-programme{letter-spacing:.02em;color:#fb923c;cursor:pointer;background:#fb923c1a;border:1px solid #fb923c4d;border-radius:8px;margin-top:.75rem;padding:.5rem 1rem;font-size:.78rem;font-weight:600;transition:background .15s,border-color .15s}.btn-needs-programme:hover{background:#fb923c2e;border-color:#fb923c80}.btn-needs-programme.all-clear{color:#34d399;background:#34d3991a;border-color:#34d3994d}.btn-needs-programme.all-clear:hover{background:#34d3991a;border-color:#34d3994d}.stats-banner-cards{flex:1;display:flex}.stats-mini-card{border-right:1px solid var(--border);border-top:3px solid var(--accent-color,var(--accent));flex-direction:column;flex:1;gap:.5rem;padding:1.25rem;display:flex}.stats-mini-card:last-child{border-right:none}.stats-mini-card-btn{border:none;border-right:1px solid var(--border);border-top:3px solid var(--accent-color,var(--accent));text-align:left;cursor:pointer;transition:background var(--transition);background:0 0}.stats-mini-card-btn:last-child{border-right:none}.stats-mini-card-btn:hover{background:#ffffff0a}.stats-mini-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-subtle);font-size:.62rem;font-weight:700}.stats-mini-num{letter-spacing:-.03em;font-size:2.25rem;font-weight:800;line-height:1}.dash-charts-row{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.dash-chart-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.75rem;padding:1.125rem 1.25rem 1rem;display:flex}.dash-chart-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.dash-chart-title{text-transform:uppercase;letter-spacing:.1em;color:var(--text-subtle);font-size:.65rem;font-weight:700}.dash-chart-stat{align-items:baseline;gap:.5rem;display:flex}.dash-chart-big{letter-spacing:-.02em;font-size:2rem;font-weight:800;line-height:1}.dash-chart-sub{color:var(--text-muted);font-size:.8rem;font-weight:500}.period-toggle{background:var(--surface-raised);border-radius:var(--radius-xs);gap:1px;padding:2px;display:flex}.period-btn{letter-spacing:.06em;color:var(--text-subtle);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-radius:3px;padding:.2rem .45rem;font-family:inherit;font-size:.62rem;font-weight:700}.period-btn.active{background:var(--primary);color:#fff}.dash-donut-wrap{flex:1;align-items:center;gap:1rem;display:flex}.dash-donut-legend{flex-direction:column;flex:1;gap:.35rem;display:flex}.donut-legend-item{align-items:center;gap:.4rem;font-size:.72rem;display:flex}.donut-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.donut-legend-label{color:var(--text-muted);flex:1;font-weight:500}.donut-legend-val{font-weight:700}.mini-chart-wrap{flex-direction:column;flex:1;gap:.25rem;display:flex}.mini-chart-labels{justify-content:space-between;padding:0 2px;display:flex}.mini-chart-labels span{color:var(--text-subtle);letter-spacing:.03em;font-size:.58rem;font-weight:600}.dash-bottom-grid{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:1rem;display:grid}.dash-bottom-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.75rem;padding:1.125rem 1.25rem;display:flex}.dash-bottom-card-danger{border-top:3px solid #f8717199}.dash-bottom-card-success{border-top:3px solid #34d39999}.dash-bottom-header{flex-direction:column;gap:.625rem;display:flex}.dash-bottom-title-row{align-items:center;gap:.4rem;display:flex}.dash-bottom-title{text-transform:uppercase;letter-spacing:.12em;color:var(--text-subtle);font-size:.65rem;font-weight:700}.dash-bottom-search{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-xs);align-items:center;gap:.5rem;padding:.45rem .75rem;display:flex}.dash-bottom-search .search-icon{color:var(--text-subtle);width:13px;height:13px;position:static;transform:none}.dash-search-input{color:var(--text);background:0 0;border:none;outline:none;width:100%;font-family:inherit;font-size:.8rem}.dash-search-input::placeholder{color:var(--text-subtle)}.dash-badge-count{border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.65rem;font-weight:800;display:inline-flex}.dash-badge-count.danger{color:#f87171;background:#f8717126}.dash-badge-count.success{color:#34d399;background:#34d39926}.dash-client-list{flex-direction:column;flex:1;gap:.375rem;display:flex}.dash-client-row{border-radius:var(--radius-xs);color:var(--text);transition:background var(--transition);align-items:center;gap:.75rem;padding:.625rem .5rem;text-decoration:none;display:flex}.dash-client-row:hover{background:var(--surface-alt)}.dash-client-avatar{border:1.5px solid;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.75rem;font-weight:800;display:flex}.dash-client-avatar.small{width:32px;height:32px;font-size:.68rem}.dash-client-info{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.dash-client-info strong{white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:700;overflow:hidden}.dash-client-info span{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.74rem;overflow:hidden}.dash-client-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.35rem;display:flex}.dash-progress-wrap{align-items:center;gap:.4rem;display:flex}.dash-progress-bar{background:var(--surface-raised);border-radius:999px;width:52px;height:4px;overflow:hidden}.dash-progress-fill{border-radius:999px;height:100%;transition:width .4s}.dash-progress-pct{color:var(--text-muted);text-align:right;min-width:28px;font-size:.7rem;font-weight:700}.dash-alert-list{flex-direction:column;flex:1;gap:.375rem;display:flex}.dash-alert-row{border-radius:var(--radius-xs);color:var(--text);transition:background var(--transition);align-items:center;gap:.6rem;padding:.625rem .5rem;text-decoration:none;display:flex}.dash-alert-row:hover{background:var(--surface-alt)}.dash-alert-info{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.dash-alert-info strong{font-size:.82rem;font-weight:700}.dash-alert-info span{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.73rem;overflow:hidden}.dash-days-badge{letter-spacing:.06em;white-space:nowrap;border-radius:999px;flex-shrink:0;padding:.2rem .5rem;font-size:.62rem;font-weight:800}.dash-days-badge.stale{color:#f87171;background:#f871711f}.dash-days-badge.fresh{color:#00c2d1;background:#00c2d11f}.dash-bottom-action{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text-muted);transition:all var(--transition);justify-content:center;align-items:center;padding:.6rem;font-size:.8rem;font-weight:600;text-decoration:none;display:flex}.dash-bottom-action:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface-alt)}.dash-view-all{color:var(--primary);white-space:nowrap;transition:opacity var(--transition);font-size:.78rem;font-weight:600;text-decoration:none}.dash-view-all:hover{opacity:.75}.builder-standalone-bar{border-radius:var(--radius-sm);background:#1e90ff12;border:1px solid #1e90ff33;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;padding:.625rem 1rem;display:flex}.builder-standalone-info{color:var(--text-muted);align-items:center;gap:.5rem;font-size:.82rem;font-weight:500;display:flex}.clients-sort-banner{background:var(--primary-glow);border-radius:var(--radius-xs);color:var(--primary-hover);border:1px solid #1e90ff33;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:.5rem .875rem;font-size:.78rem;font-weight:600;display:flex}.clients-sort-clear{color:var(--text-muted);cursor:pointer;transition:color var(--transition);background:0 0;border:none;padding:0;font-family:inherit;font-size:.78rem}.clients-sort-clear:hover{color:var(--text)}.dash-empty{color:var(--text-subtle);text-align:center;padding:1.25rem 0;font-size:.8rem;font-weight:500}@media (width<=1100px){.dash-charts-row,.dash-bottom-grid{grid-template-columns:1fr 1fr}.stats-banner-cards{flex-wrap:wrap}.stats-mini-card{min-width:120px}}@media (width<=700px){.bio-main{padding:calc(60px + 1rem) 1rem 2rem}.dash-hero{flex-direction:column;align-items:flex-start}.dash-hero-actions{width:100%}.stats-banner{flex-direction:column}.stats-banner-summary{border-right:none;border-bottom:1px solid var(--border)}.stats-banner-cards{flex-wrap:wrap}.dash-charts-row,.dash-bottom-grid{grid-template-columns:1fr}.topnav-logo-text,.topnav-username{display:none}}.login-select{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;color:var(--text);appearance:none;cursor:pointer;transition:border-color var(--transition);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238A99A8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px;padding:.7rem 1rem;font-family:inherit;font-size:.95rem}.login-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}.login-select option{background:var(--surface);color:var(--text)}.topnav-user-menu-role{color:var(--text-subtle);letter-spacing:.04em;text-transform:uppercase;padding:0 .85rem .5rem;font-size:.72rem;font-weight:500}.topnav-user-menu-divider{background:var(--border);height:1px;margin:.25rem 0}.topnav-user-menu-item--danger{color:var(--danger)!important}.topnav-user-menu-item--danger:hover{background:#f871711a!important}.topnav-logo-custom{object-fit:contain;border-radius:6px;width:28px;height:28px}.settings-page{max-width:760px;margin:0 auto;padding:2rem 1.5rem 4rem}.settings-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2.5rem;display:flex}.settings-title{letter-spacing:-.02em;margin:0 0 .3rem;font-size:1.6rem;font-weight:700}.settings-subtitle{color:var(--text-muted);margin:0;font-size:.9rem}.settings-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.25rem;padding:1.5rem}.settings-section-title{margin:0 0 .3rem;font-size:1rem;font-weight:600}.settings-section-desc{color:var(--text-muted);margin:0 0 1.25rem;font-size:.82rem}.settings-fields{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.settings-field{flex-direction:column;gap:.4rem;display:flex}.settings-field--full{grid-column:1/-1}.settings-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:600}.settings-input{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);transition:border-color var(--transition), box-shadow var(--transition);width:100%;padding:.6rem .85rem;font-family:inherit;font-size:.9rem}.settings-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}.settings-input::placeholder{color:var(--text-subtle)}.settings-input--sm{padding:.45rem .7rem;font-size:.85rem}.settings-textarea{resize:vertical;min-height:76px}.settings-footer{align-items:center;gap:1rem;padding-top:.5rem;display:flex}.settings-save-btn{align-items:center;gap:.5rem;display:flex}.settings-saved-msg{color:var(--success);font-size:.85rem;font-weight:500}.logo-upload-area{align-items:flex-start;display:flex}.logo-upload-btn{border:2px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-raised);color:var(--text-muted);cursor:pointer;transition:border-color var(--transition), color var(--transition);text-align:center;flex-direction:column;align-items:center;gap:.5rem;min-width:180px;padding:1.5rem 2rem;font-family:inherit;font-size:.85rem;display:flex}.logo-upload-btn:hover{border-color:var(--primary);color:var(--primary)}.logo-upload-hint{color:var(--text-subtle);font-size:.72rem}.logo-preview-wrap{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.logo-preview{object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-raised);max-width:160px;max-height:80px;padding:.5rem}.logo-preview-actions{align-items:center;gap:.5rem;display:flex}.users-add-card{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);margin-bottom:1.5rem;padding:1.25rem 1.5rem}.users-add-title{margin:0 0 1rem;font-size:.95rem;font-weight:600}.users-add-form{flex-direction:column;gap:.85rem;display:flex}.users-add-actions{gap:.75rem;display:flex}.users-list{flex-direction:column;gap:.75rem;display:flex}.users-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--transition);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.users-card--me{border-color:var(--primary);background:#1e90ff0a}.users-card-left{flex:1;align-items:center;gap:1rem;min-width:0;display:flex}.users-avatar{width:40px;height:40px;color:var(--accent);background:#00c2d11f;border:1px solid #00c2d14d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex}.users-avatar--admin{color:var(--primary);background:#1e90ff1f;border-color:#1e90ff4d}.users-info{flex-direction:column;gap:.2rem;min-width:0;display:flex}.users-name{align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;display:flex}.users-you-badge{background:var(--primary-glow);color:var(--primary);text-transform:uppercase;letter-spacing:.05em;border-radius:50px;padding:.1rem .5rem;font-size:.68rem;font-weight:600}.users-email{color:var(--text-muted);font-size:.8rem}.users-meta{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.2rem;display:flex}.users-role-badge{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);background:#00c2d11a;border:1px solid #00c2d140;border-radius:50px;align-items:center;gap:.3rem;padding:.15rem .55rem;font-size:.7rem;font-weight:600;display:inline-flex}.users-role-badge--admin{color:var(--primary);background:#1e90ff1a;border-color:#1e90ff40}.users-client-count{color:var(--text-muted);font-size:.78rem}.users-edit-fields{flex-wrap:wrap;gap:.5rem;display:flex}.users-card-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.btn-primary{background:var(--primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition), opacity var(--transition);border:none;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-family:inherit;font-size:.85rem;font-weight:600;display:inline-flex}.btn-primary:hover{background:var(--primary-hover)}.btn-ghost{color:var(--text-muted);border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--transition), color var(--transition);background:0 0;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-family:inherit;font-size:.85rem;font-weight:500;display:inline-flex}.btn-ghost:hover{border-color:var(--text-muted);color:var(--text)}.btn-ghost-sm{color:var(--text-muted);border:1px solid var(--border-strong);border-radius:var(--radius-xs);cursor:pointer;transition:border-color var(--transition), color var(--transition);background:0 0;align-items:center;gap:.35rem;padding:.35rem .75rem;font-family:inherit;font-size:.78rem;font-weight:500;display:inline-flex}.btn-ghost-sm:hover{border-color:var(--text-muted);color:var(--text)}.btn-sm{padding:.35rem .75rem;font-size:.8rem}.btn-danger{background:var(--danger);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--transition);border:none;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-family:inherit;font-size:.85rem;font-weight:600;display:inline-flex}.btn-danger:hover{opacity:.85}.btn-danger-sm{color:var(--danger);border-radius:var(--radius-xs);cursor:pointer;transition:background var(--transition);background:#f871711a;border:1px solid #f871714d;align-items:center;gap:.35rem;padding:.35rem .75rem;font-family:inherit;font-size:.78rem;font-weight:600;display:inline-flex}.btn-danger-sm:hover{background:#f8717133}.form-error{color:var(--danger);margin:0;font-size:.82rem}.modal-box{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);width:calc(100% - 2rem);max-width:420px;box-shadow:var(--shadow-lg);padding:1.75rem}.modal-title{margin:0 0 .75rem;font-size:1.05rem;font-weight:700}.modal-body{color:var(--text-muted);margin:0 0 1.25rem;font-size:.875rem;line-height:1.6}.modal-body strong{color:var(--text)}.modal-reassign{flex-direction:column;gap:.4rem;margin-bottom:1.25rem;display:flex}.modal-actions{gap:.75rem;display:flex}@media (width<=600px){.settings-fields{grid-template-columns:1fr}.settings-field--full{grid-column:1}.settings-header{flex-direction:column}.users-card{flex-wrap:wrap}.users-card-actions{justify-content:flex-end;width:100%}.users-edit-fields{flex-direction:column}}.client-portfolio-tag{background:color-mix(in srgb, var(--ptag-color,#4aaeff) 12%, transparent);border:1px solid color-mix(in srgb, var(--ptag-color,#4aaeff) 30%, transparent);color:var(--ptag-color,#4aaeff);letter-spacing:.02em;border-radius:50px;align-items:center;gap:.3rem;padding:.1rem .5rem .1rem .35rem;font-size:.68rem;font-weight:600;display:inline-flex}.client-portfolio-dot{border-radius:50%;flex-shrink:0;width:5px;height:5px}.topnav-menu-section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle);margin:0;padding:.5rem .85rem .25rem;font-size:.68rem;font-weight:700}.topnav-portfolio-item{width:100%;color:var(--text-muted);cursor:pointer;text-align:left;transition:background var(--transition), color var(--transition);border-radius:var(--radius-xs);background:0 0;border:none;align-items:center;gap:.55rem;padding:.45rem .85rem;font-family:inherit;font-size:.82rem;font-weight:500;display:flex}.topnav-portfolio-item:hover{background:var(--surface-raised);color:var(--text)}.topnav-portfolio-item.active{color:var(--text);font-weight:600}.topnav-portfolio-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.topnav-portfolio-dot--all{background:var(--text-subtle)}.topnav-portfolio-check{color:var(--primary);margin-left:auto;font-size:.8rem;font-weight:700}.portfolio-add-row{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1rem;padding:.85rem;display:flex}.portfolio-color-swatches{flex-shrink:0;gap:.3rem;display:flex}.portfolio-swatch{cursor:pointer;width:20px;height:20px;transition:transform var(--transition), border-color var(--transition);border:2px solid #0000;border-radius:50%;flex-shrink:0;padding:0}.portfolio-swatch:hover{transform:scale(1.15)}.portfolio-swatch.selected{border-color:var(--text);transform:scale(1.15)}.portfolio-list{flex-direction:column;gap:.4rem;display:flex}.portfolio-list-item{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:.75rem;padding:.55rem .75rem;display:flex}.portfolio-list-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.portfolio-list-name{flex:1;font-size:.88rem;font-weight:500}.portfolio-list-actions{align-items:center;gap:.4rem;display:flex}.portfolio-checkbox-list{flex-direction:column;gap:.4rem;margin-top:.1rem;display:flex}.portfolio-checkbox-item{cursor:pointer;border-radius:var(--radius-xs);transition:background var(--transition);align-items:center;gap:.55rem;padding:.3rem .5rem;font-size:.85rem;display:flex}.portfolio-checkbox-item:hover{background:var(--surface-raised)}.portfolio-checkbox-item input[type=checkbox]{accent-color:var(--primary);cursor:pointer;flex-shrink:0;width:15px;height:15px}.portfolio-checkbox-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.users-portfolio-tags{flex-wrap:wrap;gap:.3rem;display:flex}.users-portfolio-chip{background:color-mix(in srgb, var(--chip-color,#4aaeff) 12%, transparent);border:1px solid color-mix(in srgb, var(--chip-color,#4aaeff) 30%, transparent);color:var(--chip-color,#4aaeff);border-radius:50px;align-items:center;gap:.3rem;padding:.1rem .5rem .1rem .35rem;font-size:.72rem;font-weight:600;display:inline-flex}.client-edit-card{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);margin-bottom:1.5rem;padding:1.5rem}.client-edit-title{margin:0 0 1.25rem;font-size:1rem;font-weight:600}.client-edit-grid{grid-template-columns:1fr 1fr;gap:.9rem 1rem;display:grid}.client-edit-actions{gap:.75rem;margin-top:1.25rem;display:flex}@media (width<=600px){.client-edit-grid{grid-template-columns:1fr}.client-edit-grid .form-row[style*=grid-column]{grid-column:1!important}}.archived-banner{color:#f87171;background:#f8717114;border:1px solid #f8717140;border-radius:8px;align-items:center;margin-bottom:1rem;padding:.75rem 1rem;font-size:.88rem;font-weight:500;display:flex}.portfolio-access-row{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.85rem 1rem}.portfolio-access-header{align-items:center;gap:.6rem;margin-bottom:.75rem;display:flex}.portfolio-access-name{font-size:.9rem;font-weight:600}.portfolio-checkbox-list--inline{flex-flow:wrap;gap:.3rem}.portfolio-checkbox-bio-name{font-size:.84rem}.port-access-wrap{position:relative}.port-access-btn{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-xs);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:border-color var(--transition), color var(--transition);align-items:center;gap:.4rem;padding:.3rem .65rem;font-family:inherit;font-size:.78rem;font-weight:500;display:inline-flex}.port-access-btn:hover{border-color:var(--primary);color:var(--text)}.port-access-btn--empty{color:var(--danger);border-color:#f871714d}.port-access-chevron{opacity:.6;font-size:.6rem}.port-access-dropdown{z-index:50;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);min-width:180px;padding:.4rem 0;position:absolute;top:calc(100% + 4px);left:0}.port-access-option{cursor:pointer;transition:background var(--transition);white-space:nowrap;align-items:center;gap:.55rem;padding:.45rem .85rem;font-size:.85rem;display:flex}.port-access-option:hover{background:var(--surface-raised)}.port-access-option input[type=checkbox]{accent-color:var(--primary);cursor:pointer;flex-shrink:0;width:14px;height:14px}.port-access-empty{color:var(--text-subtle);margin:0;padding:.5rem .85rem;font-size:.8rem}.client-filter-row{flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem;display:flex}.client-filter-group{flex-direction:column;flex:1;gap:.3rem;min-width:160px;display:flex}.client-filter-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);font-size:.72rem;font-weight:700}.client-filter-select{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);appearance:none;cursor:pointer;transition:border-color var(--transition), box-shadow var(--transition);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238A99A8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right .6rem center;background-repeat:no-repeat;background-size:14px;padding:.5rem 2rem .5rem .75rem;font-family:inherit;font-size:.88rem}.client-filter-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}.client-filter-select option{background:var(--surface);color:var(--text)}.selfie-filter-toggle{border-radius:var(--radius-sm);color:#f8c400;cursor:pointer;transition:all var(--transition);white-space:nowrap;background:#f8c40014;border:1px solid #f8c40040;align-self:flex-end;align-items:center;gap:.4rem;padding:.5rem 1rem;font-family:inherit;font-size:.85rem;font-weight:600;display:flex}.selfie-filter-toggle:hover{background:#f8c40026;border-color:#f8c40066}.selfie-filter-toggle.active{background:#f8c40033;border-color:#f8c400}.portfolio-default-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);vertical-align:middle;background:#8a99a826;border:1px solid #8a99a859;border-radius:50px;align-items:center;margin-left:.5rem;padding:.1rem .45rem;font-size:.65rem;font-weight:700;display:inline-flex}.cp-layout{background:radial-gradient(700px 500px at 80% -5%,#3aa6ff24,#0000 60%),radial-gradient(600px 400px at -5% 40%,#19d3c51a,#0000 60%),#04101a;flex-direction:column;min-height:100dvh;display:flex}.cp-topbar{z-index:10;background:linear-gradient(#04101a 60%,#0000);justify-content:space-between;align-items:center;padding:14px 18px 10px;display:flex;position:sticky;top:0}.cp-logo{letter-spacing:.16em;color:#19d3c5;align-items:center;gap:9px;font-family:Montserrat,sans-serif;font-size:13px;font-weight:700;display:flex}.cp-logo-mark{background:linear-gradient(135deg,#19d3c5 0%,#3aa6ff 100%);border-radius:8px;place-items:center;width:28px;height:28px;display:grid;box-shadow:0 0 20px #19d3c54d}.cp-logo-mark svg{width:16px;height:16px}.cp-signout-btn{color:#8aa6b8;cursor:pointer;background:#ffffff0a;border:1px solid #78c8e626;border-radius:10px;place-items:center;width:36px;height:36px;transition:all .2s;display:grid}.cp-signout-btn:hover{color:#e7f4fb;background:#ffffff14}.cp-signout-btn svg{width:16px;height:16px}.cp-main{flex:1;padding-bottom:90px;overflow-y:auto}.cp-bottom-nav{-webkit-backdrop-filter:blur(20px);z-index:30;background:#081827e0;border:1px solid #78c8e62e;border-radius:20px;grid-template-columns:repeat(3,1fr);width:min(420px,100% - 28px);padding:6px;display:grid;position:fixed;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 16px 40px #00000080}.cp-nav-item{color:#5b7385;letter-spacing:.1em;text-transform:uppercase;border-radius:13px;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;font-size:9px;font-weight:700;text-decoration:none;transition:all .2s;display:flex}.cp-nav-item svg{width:19px;height:19px}.cp-nav-item--active{color:#19d3c5;background:#19d3c51f}.cp-nav-item:not(.cp-nav-item--active):hover{color:#e7f4fb}.cp-page{color:#e7f4fb;flex-direction:column;gap:14px;max-width:480px;margin:0 auto;padding:6px 18px 24px;display:flex}.cp-toast{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#e7f4fb;opacity:0;pointer-events:none;z-index:100;background:#081827f2;border:1px solid #19d3c566;border-radius:12px;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:600;transition:all .35s cubic-bezier(.2,.8,.2,1);display:flex;position:fixed;top:24px;left:50%;transform:translate(-50%)translateY(-70px);box-shadow:0 12px 40px #00000080,0 0 24px #19d3c540}.cp-toast--show{opacity:1;transform:translate(-50%)translateY(0)}.cp-hero{background:radial-gradient(360px 180px at 95% 0,#19d3c52e,#0000 60%),linear-gradient(160deg,#3aa6ff17,#19d3c508);border:1px solid #78c8e62e;border-radius:24px;padding:18px}.cp-hero-top{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.cp-welcome-label{letter-spacing:.18em;color:#5b7385;text-transform:uppercase;font-size:10px;font-weight:600}.cp-welcome-name{letter-spacing:-.02em;margin-top:3px;font-family:Montserrat,sans-serif;font-size:24px;font-weight:800}.cp-phase-chip{color:#19d3c5;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#19d3c51a;border:1px solid #19d3c54d;border-radius:999px;align-items:center;gap:6px;padding:6px 11px;font-size:10px;font-weight:700;display:inline-flex}.cp-pulse{background:#19d3c5;border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2s infinite cpPulse;box-shadow:0 0 #19d3c599}@keyframes cpPulse{0%{box-shadow:0 0 #19d3c58c}70%{box-shadow:0 0 0 9px #19d3c500}to{box-shadow:0 0 #19d3c500}}.cp-ring-row{align-items:center;gap:18px;display:flex}.cp-ring{flex-shrink:0;width:160px;height:160px;position:relative}.cp-ring-center{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.cp-ring-pct{color:#e7f4fb;font-family:Montserrat,sans-serif;font-size:28px;font-weight:800;line-height:1}.cp-ring-label{letter-spacing:.14em;color:#5b7385;text-transform:uppercase;margin-top:5px;font-size:10px}.cp-ring-side{flex:1}.cp-ring-title{color:#e7f4fb;font-size:14px;font-weight:700}.cp-ring-sub{color:#8aa6b8;margin-top:4px;font-size:11px;line-height:1.5}.cp-hero-cta{cursor:pointer;color:#04212a;background:linear-gradient(135deg,#19d3c5,#3aa6ff);border:none;border-radius:10px;margin-top:12px;padding:8px 16px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:700;transition:transform .15s,box-shadow .2s;box-shadow:0 4px 14px #19d3c547}.cp-hero-cta:hover{transform:translateY(-1px);box-shadow:0 6px 18px #19d3c566}.cp-hero-cta:active{transform:translateY(0)}.cp-goals-bar{background:#ffffff0f;border-radius:999px;height:7px;margin-top:12px;overflow:hidden}.cp-goals-bar-fill{background:linear-gradient(90deg,#19d3c5,#3aa6ff);border-radius:999px;height:100%;transition:width 1.4s cubic-bezier(.2,.7,.2,1);box-shadow:0 0 10px #19d3c580}.cp-goals-bar-meta{color:#5b7385;justify-content:space-between;margin-top:7px;font-size:11px;font-weight:500;display:flex}.cp-goals-bar-meta b{color:#e7f4fb;font-weight:700}.cp-stat-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.cp-stat{background:#ffffff08;border:1px solid #78c8e61a;border-radius:16px;padding:14px 12px}.cp-stat-ic{margin-bottom:6px;font-size:18px}.cp-stat-v{font-family:Montserrat,sans-serif;font-size:20px;font-weight:800;line-height:1}.cp-stat-l{letter-spacing:.14em;color:#5b7385;text-transform:uppercase;margin-top:4px;font-size:9px;font-weight:600}.cp-stat--streak .cp-stat-v{color:#ffb547}.cp-stat--xp .cp-stat-v{color:#19d3c5}.cp-stat--sessions .cp-stat-v{color:#3ddc97}.cp-section-head{justify-content:space-between;align-items:center;margin:6px 2px 0;display:flex}.cp-section-title{color:#e7f4fb;margin:0;font-family:Montserrat,sans-serif;font-size:15px;font-weight:700}.cp-badge{letter-spacing:.1em;text-transform:uppercase;color:#19d3c5;background:#19d3c51a;border:1px solid #19d3c540;border-radius:999px;padding:4px 9px;font-size:10px;font-weight:700}.cp-section-sub{color:#5b7385;letter-spacing:.04em;font-size:11px}.cp-journey{background:#ffffff06;border:1px solid #78c8e61a;border-radius:20px;padding:16px}.cp-journey-track{justify-content:space-between;align-items:center;padding:8px 0 4px;display:flex;position:relative}.cp-journey-col{flex-direction:column;flex:1;align-items:center;gap:6px;display:flex;position:relative}.cp-journey-line{z-index:0;background:#78c8e61f;width:100%;height:2px;position:absolute;top:18px;right:50%}.cp-journey-line--done{background:linear-gradient(90deg,#3ddc97,#19d3c5)}.cp-journey-node{z-index:1;border-radius:50%;place-items:center;width:36px;height:36px;font-size:13px;font-weight:700;transition:all .3s;display:grid;position:relative}.cp-journey-node--done{color:#04212a;background:linear-gradient(135deg,#3ddc97,#19d3c5);box-shadow:0 0 12px #3ddc9773}.cp-journey-node--current{color:#04212a;background:linear-gradient(135deg,#19d3c5,#3aa6ff);animation:3s ease-in-out infinite cpBob;box-shadow:0 0 0 5px #19d3c526,0 0 18px #19d3c580}@keyframes cpBob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.cp-journey-node--locked{color:#5b7385;background:#ffffff0a;border:2px solid #78c8e626}.cp-journey-label{letter-spacing:.08em;color:#5b7385;text-transform:uppercase;text-align:center;font-size:9px;font-weight:700}.cp-journey-label--done{color:#3ddc97}.cp-journey-label--current{color:#19d3c5}.cp-journey-meta{color:#8aa6b8;flex-wrap:wrap;justify-content:space-between;gap:4px;margin-top:12px;font-size:11px;display:flex}.cp-journey-meta b{color:#e7f4fb;font-weight:700}.cp-goals-list{flex-direction:column;gap:10px;display:flex}.cp-goal{cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff08;border:1px solid #78c8e61a;border-radius:16px;align-items:center;gap:12px;padding:14px 16px;transition:background .2s,border-color .2s;display:flex}.cp-goal:hover{background:#ffffff0d;border-color:#78c8e62e}.cp-goal-check{border:2px solid #78c8e640;border-radius:8px;flex-shrink:0;place-items:center;width:24px;height:24px;transition:all .25s;display:grid}.cp-goal-check--done{background:linear-gradient(135deg,#19d3c5,#3aa6ff);border-color:#0000;box-shadow:0 0 10px #19d3c566}.cp-goal-body{flex:1;min-width:0}.cp-goal-title{color:#e7f4fb;font-size:13.5px;font-weight:600;transition:color .25s}.cp-goal--done .cp-goal-title{color:#5b7385;-webkit-text-decoration:line-through #5b738566;text-decoration:line-through #5b738566}.cp-goal-meta{color:#5b7385;align-items:center;gap:8px;margin-top:3px;font-size:11px;display:flex}.cp-goal-tag{letter-spacing:.05em;text-transform:uppercase;border-radius:6px;padding:2px 7px;font-size:10px;font-weight:600}.cp-goal-movement{color:#3aa6ff;background:#3aa6ff14;border-radius:6px;margin-top:5px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-block}.cp-goal-xp{color:#19d3c5;letter-spacing:.06em;white-space:nowrap;background:#19d3c51a;border-radius:8px;flex-shrink:0;padding:4px 8px;font-size:10px;font-weight:700}.cp-goal--done .cp-goal-xp{opacity:.4}.cp-timer-start{color:#3aa6ff;cursor:pointer;vertical-align:middle;background:0 0;border:none;border-radius:6px;align-items:center;margin-left:4px;padding:2px;transition:background .15s;display:inline-flex}.cp-timer-start:hover{background:#3aa6ff26}.cp-timer-overlay{z-index:9999;background:#020c12eb;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.cp-timer-modal{flex-direction:column;align-items:center;gap:12px;padding:2rem;display:flex}.cp-timer-title{color:#e7f4fb;font-size:1.2rem;font-weight:700}.cp-timer-set{color:#5b7385;letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}.cp-timer-ring{width:160px;height:160px;margin:12px 0;position:relative}.cp-timer-ring svg{position:absolute;inset:0}.cp-timer-digits{color:#e7f4fb;justify-content:center;align-items:center;font-family:Montserrat,sans-serif;font-size:2rem;font-weight:800;display:flex;position:absolute;inset:0}.cp-timer-actions{margin-top:8px}.cp-timer-btn{border-radius:12px;min-width:140px;padding:.7rem 1.5rem;font-size:1rem;font-weight:600}.cp-timer-btn--cancel{color:#8aa6b8;background:#ffffff0f;border:1px solid #ffffff1f}.cp-celebrate-overlay{z-index:9999;background:#020c12e0;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.cp-celebrate-confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.cp-confetti-piece{animation:linear forwards confettiFall;position:absolute;top:-10px}@keyframes confettiFall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}.cp-celebrate-modal{z-index:1;text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff0a;border:1px solid #78c8e626;border-radius:24px;flex-direction:column;align-items:center;max-width:320px;padding:2rem 1.5rem;animation:.4s cubic-bezier(.34,1.56,.64,1) celebratePop;display:flex;position:relative}@keyframes celebratePop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.cp-celebrate-emoji{margin-bottom:.5rem;font-size:3.5rem;line-height:1}.cp-celebrate-title{color:#e7f4fb;margin:0 0 .5rem;font-family:Montserrat,sans-serif;font-size:1.4rem;font-weight:800}.cp-celebrate-msg{color:#8aa6b8;margin:0 0 1.25rem;font-size:.9rem;line-height:1.6}.cp-celebrate-btn{color:#04212a;cursor:pointer;background:linear-gradient(135deg,#19d3c5,#3aa6ff);border:none;border-radius:12px;padding:.7rem 2rem;font-size:.95rem;font-weight:700}.cp-phase-modal{max-width:340px}.cp-phase-subtitle{color:#8aa6b8;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .3rem;font-size:.85rem;font-weight:600}.cp-phase-advance-badge{color:#19d3c5;background:linear-gradient(135deg,#19d3c526,#3aa6ff26);border:1px solid #19d3c559;border-radius:14px;margin-bottom:1rem;padding:.45rem 1.4rem;font-family:Montserrat,sans-serif;font-size:1.3rem;font-weight:800}.cp-phase-goal{text-align:left;background:#ffffff0a;border:1px solid #78c8e61a;border-radius:12px;width:100%;margin-bottom:1rem;padding:.75rem}.cp-phase-goal-label{text-transform:uppercase;letter-spacing:.08em;color:#5b7385;margin-bottom:.25rem;font-size:.7rem;font-weight:600}.cp-phase-goal-text{color:#e7f4fb;font-size:.92rem;line-height:1.4}.cp-phase-progress{width:100%;margin-bottom:1rem}.cp-phase-progress-bar{background:#ffffff14;border-radius:4px;height:8px;overflow:hidden}.cp-phase-progress-fill{background:linear-gradient(90deg,#19d3c5,#3aa6ff);border-radius:4px;height:100%;transition:width 1.2s cubic-bezier(.2,.7,.2,1)}.cp-phase-progress-label{color:#8aa6b8;text-align:center;margin-top:.35rem;font-size:.78rem}.cp-empty-goals{text-align:center;color:#5b7385;background:#ffffff06;border:1px solid #78c8e61a;border-radius:20px;padding:2rem 1.5rem;font-size:.88rem;line-height:1.7}.cp-empty-goals p{margin:0}.cp-empty-goals p+p{color:#8aa6b8;margin-top:.3rem}.cp-coach{background:linear-gradient(160deg,#19d3c512,#19d3c500);border:1px solid #19d3c52e;border-radius:20px;gap:12px;padding:16px;display:flex}.cp-coach-avatar{background:#19d3c51f;border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.cp-coach-body{flex:1}.cp-coach-name{color:#e7f4fb;align-items:center;gap:5px;font-size:13px;font-weight:700;display:flex}.cp-coach-role{color:#5b7385;font-size:11px;font-weight:500}.cp-coach-msg{color:#8aa6b8;margin-top:4px;font-size:12.5px;font-style:italic;line-height:1.55}.goal-form-card{background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-sm);margin-bottom:1rem;padding:1rem}.goal-form-grid{grid-template-columns:1fr 1fr 1fr;gap:.75rem;display:grid}.goal-list-item{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:.65rem;padding:.65rem .85rem;display:flex}.goal-cat-tag{letter-spacing:.06em;text-transform:uppercase;border-radius:6px;flex-shrink:0;padding:2px 7px;font-size:.68rem;font-weight:700}.goal-list-title{color:var(--text);flex:1;min-width:0;font-size:.88rem;font-weight:500}.goal-xp-badge{color:var(--accent);background:#00c2d11a;border-radius:6px;flex-shrink:0;padding:2px 7px;font-size:.7rem;font-weight:700}.goal-duration{color:var(--text-muted);flex-shrink:0;font-size:.75rem}@media (width<=600px){.goal-form-grid{grid-template-columns:1fr 1fr}.cp-ring-row{gap:12px}.cp-ring{width:140px;height:140px}.cp-ring-pct{font-size:24px}.cp-ring-label{margin-top:3px;font-size:9px}.cp-welcome-name{font-size:20px}}.mov-picker-list{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow);z-index:10;margin-top:4px;position:relative;overflow:hidden}.mov-picker-option{border:none;border-bottom:1px solid var(--border);text-align:left;cursor:pointer;width:100%;transition:background var(--transition);background:0 0;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem .85rem;font-family:inherit;display:flex}.mov-picker-option:last-child{border-bottom:none}.mov-picker-option:hover,.mov-picker-option.selected{background:var(--surface-raised)}.mov-picker-name{color:var(--text);font-size:.85rem;font-weight:600}.mov-picker-group{color:var(--text-muted);font-size:.75rem}.mov-picker-empty{color:var(--text-subtle);margin:0;padding:.6rem .85rem;font-size:.82rem}.mov-selected-chip{background:var(--primary-glow);color:var(--primary);border:1px solid #1e90ff4d;border-radius:50px;align-items:center;gap:.5rem;margin-top:.4rem;padding:.25rem .65rem;font-size:.78rem;font-weight:600;display:inline-flex}.mov-selected-chip button{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem;line-height:1}.goal-movement-chip{color:var(--primary);margin-top:2px;font-size:.72rem;font-weight:500;display:block}.goals-section-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem;display:flex}.goals-section-title{margin:0 0 .2rem;font-size:.95rem;font-weight:700}.goals-section-sub{color:var(--text-muted);margin:0;font-size:.8rem;line-height:1.5}.selfie-review-card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:1rem;padding:.85rem;display:flex}.selfie-thumb{object-fit:cover;border-radius:var(--radius-sm);cursor:pointer;width:72px;height:72px;transition:opacity var(--transition);flex-shrink:0}.selfie-thumb:hover{opacity:.85}.selfie-info{flex-direction:column;flex:1;gap:.3rem;min-width:0;display:flex}.selfie-week{font-size:.88rem;font-weight:600}.selfie-date{color:var(--text-muted);font-size:.75rem}.selfie-status{border-radius:6px;width:fit-content;padding:2px 8px;font-size:.78rem;font-weight:600;display:inline-flex}.selfie-status--submitted{color:#f8c400;background:#f8c4001f}.selfie-status--approved{color:var(--success);background:#10b9811f}.selfie-status--revoked{color:var(--danger);background:#f871711f}.selfie-actions{flex-shrink:0;gap:.5rem;display:flex}.cp-weekly-card{background:radial-gradient(300px 180px at 100% 0,#ff8a3c1f,#0000 60%),#ffffff06;border:1px solid #ff8a3c33;border-radius:20px;flex-direction:column;gap:12px;padding:18px;display:flex}.cp-weekly-label{letter-spacing:.16em;text-transform:uppercase;color:#ffb547;font-size:10px;font-weight:700}.cp-weekly-desc{color:#8aa6b8;font-size:13px;line-height:1.55}.cp-weekly-desc b{color:#e7f4fb}.cp-selfie-btn{color:#ffb547;cursor:pointer;background:linear-gradient(135deg,#ffb54726,#ff8a3c1a);border:1px solid #ff8a3c59;border-radius:12px;align-self:flex-start;align-items:center;gap:8px;padding:11px 20px;font-family:Montserrat,sans-serif;font-size:13px;font-weight:700;transition:all .2s;display:inline-flex}.cp-selfie-btn:hover{background:linear-gradient(135deg,#ffb54740,#ff8a3c2e);border-color:#ff8a3c8c}.cp-selfie-btn--remove{color:#8aa6b8;background:#ffffff0a;border-color:#ffffff1f;margin-top:.5rem;padding:8px 14px;font-size:12px;font-weight:600}.cp-selfie-btn--remove:hover{color:#ff6b6b;background:#ff50501a;border-color:#ff505059}.cp-selfie-btn--resubmit{margin-top:.75rem}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cp-accent{color:#19d3c5}.cp-badge--weekly{color:#ffb547;background:#ff8a3c1a;border-color:#ff8a3c40}.cp-goal--tapping{opacity:.6;pointer-events:none}.cp-orm-header{text-transform:uppercase;letter-spacing:.08em;color:#8aa6b8;justify-content:space-between;align-items:center;font-family:Montserrat,sans-serif;font-size:.78rem;font-weight:700;display:flex}.cp-orm-btn{color:#19d3c5;cursor:pointer;background:#19d3c51a;border:1px solid #19d3c540;border-radius:8px;padding:.4rem .8rem;font-size:.8rem;font-weight:600}.cp-orm-btn--cancel{opacity:.7}.cp-orm-actions{gap:.4rem;display:flex}.cp-orm-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.6rem;margin-top:.6rem;display:grid}.cp-orm-cell{background:#ffffff0a}.cp-orm-label{margin-bottom:.25rem}.cp-orm-input{text-align:center;width:100%;color:var(--text,#e0eaf5);background:#ffffff0f;border:1px solid #78c8e626;border-radius:8px;padding:.4rem;font-size:.9rem}.cp-orm-value{font-size:1.4rem}.cp-orm-unit{opacity:.6;margin-left:.2rem;font-size:.7rem}.cp-weekly-submitted{flex-direction:column;gap:10px;display:flex}.cp-selfie-preview{object-fit:cover;border:1px solid #78c8e61f;border-radius:12px;width:100%;max-height:220px}.cp-weekly-status{border-radius:10px;padding:8px 14px;font-size:13px;font-weight:600}.cp-weekly-status--pending{color:#f8c400;background:#f8c4001a;border:1px solid #f8c40040}.cp-weekly-status--approved{color:#3ddc97;background:#3ddc971a;border:1px solid #3ddc9740}.cp-weekly-status--revoked{color:#ff6b6b;background:#ff6b6b1a;border:1px solid #ff6b6b40}.cp-weekly-status--approved b{color:#3ddc97}.dash-lb-grid{grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem;display:grid}.dash-lb-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.125rem 1.25rem}.dash-lb-card-header{align-items:center;gap:.5rem;margin-bottom:.875rem;display:flex}.dash-lb-row{border-bottom:1px solid var(--border);color:var(--text);transition:background var(--transition);border-radius:var(--radius-xs);align-items:center;gap:.75rem;padding:.5rem 0;text-decoration:none;display:flex}.dash-lb-row:last-child{border-bottom:none}.dash-lb-row:hover{background:var(--surface-raised);padding-left:.4rem}.dash-lb-rank{text-align:center;flex-shrink:0;width:2rem;font-size:.9rem}.dash-lb-name{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.85rem;font-weight:500;overflow:hidden}.dash-lb-value{flex-shrink:0;font-size:.85rem;font-weight:700}@media (width<=700px){.dash-lb-grid{grid-template-columns:1fr}}.cp-lb-row-wrapper{grid-template-columns:1fr 1fr;gap:10px;display:grid}.cp-lb-row{border-radius:12px;align-items:center;gap:10px;padding:9px 10px;transition:background .2s;display:flex}.cp-lb-row+.cp-lb-row{margin-top:2px}.cp-lb-row:hover{background:#ffffff08}.cp-lb-row--me{background:#19d3c514;border:1px solid #19d3c533}.cp-lb-rank{text-align:center;flex-shrink:0;width:1.75rem;font-size:.85rem}.cp-lb-name{color:#e7f4fb;flex:1;font-size:.85rem;font-weight:600}.cp-lb-row--me .cp-lb-name{color:#19d3c5}.cp-lb-value{color:#e7f4fb;flex-shrink:0;font-size:.85rem;font-weight:700}.cp-lb-unit{color:#5b7385;font-size:.7rem;font-weight:500}.cp-lb-card{background:#ffffff06;border:1px solid #78c8e61a;border-radius:18px;flex:1;padding:14px}.cp-lb-header{align-items:center;gap:7px;margin-bottom:10px;display:flex}.cp-lb-icon{font-size:1rem}.cp-lb-title{letter-spacing:.1em;text-transform:uppercase;color:#5b7385;font-size:.72rem;font-weight:700}.cp-lb-empty{color:#5b7385;text-align:center;margin:0;padding:.5rem 0;font-size:.8rem}.cp-lb-row-pair,.cp-lb-pair{gap:10px;display:flex}.cp-lb-entry{border-radius:11px;align-items:center;gap:10px;padding:8px 10px;transition:background .2s;display:flex}.cp-lb-entry+.cp-lb-entry{margin-top:2px}.cp-lb-entry:hover{background:#ffffff08}.cp-lb-entry--me{background:#19d3c514;border:1px solid #19d3c533}.cp-lb-entry--me .cp-lb-name{color:#19d3c5}@media (width<=420px){.cp-lb-pair{flex-direction:column}}.cp-modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50;background:#04101ad9;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}@media (width>=520px){.cp-modal-overlay{align-items:center;padding:1rem}}.cp-modal{background:linear-gradient(#0d2235,#081827);border:1px solid #78c8e62e;border-radius:24px 24px 0 0;width:100%;max-width:480px;max-height:92vh;padding:1.5rem 1.25rem;position:relative;overflow-y:auto;box-shadow:0 -16px 48px #0009}@media (width>=520px){.cp-modal{border-radius:24px;box-shadow:0 24px 60px #0009}}.cp-modal--wide{max-width:560px}.cp-modal-close{color:#8aa6b8;cursor:pointer;background:#ffffff12;border:none;border-radius:50%;place-items:center;width:30px;height:30px;font-size:1.1rem;line-height:1;transition:background .2s;display:grid;position:absolute;top:1rem;right:1rem}.cp-modal-close:hover{background:#ffffff24}.cp-modal-label{letter-spacing:.18em;text-transform:uppercase;color:#5b7385;margin:0 0 6px;font-size:10px;font-weight:700}.cp-modal-title{color:#e7f4fb;margin:0 0 6px;font-family:Montserrat,sans-serif;font-size:18px;font-weight:700}.cp-modal-sub{color:#8aa6b8;margin:0 0 1.25rem;font-size:13px}.cp-modal-cancel{color:#8aa6b8;cursor:pointer;background:#ffffff0d;border:1px solid #78c8e62e;border-radius:12px;padding:11px 16px;font-family:Montserrat,sans-serif;font-size:13px;font-weight:600;transition:all .2s}.cp-modal-cancel:hover{background:#ffffff17}.cp-prog-card{background:#ffffff06;border:1px solid #78c8e61f;border-radius:20px;overflow:hidden}.cp-prog-header{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:16px 18px;transition:background .2s;display:flex}.cp-prog-header:hover{background:#ffffff08}.cp-prog-header-left{align-items:center;gap:12px;min-width:0;display:flex}.cp-prog-live-dot{background:#19d3c5;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2s infinite cpPulse;box-shadow:0 0 #19d3c580}.cp-prog-title{color:#e7f4fb;margin:0 0 2px;font-size:14px;font-weight:700}.cp-prog-meta{color:#8aa6b8;margin:0;font-size:11px}.cp-prog-header-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.cp-prog-badge{letter-spacing:.1em;text-transform:uppercase;color:#19d3c5;background:#19d3c51a;border:1px solid #19d3c547;border-radius:999px;padding:3px 9px;font-size:9px;font-weight:700}.cp-prog-chevron{color:#5b7385;font-size:10px}.cp-prog-body{flex-direction:column;gap:14px;padding:0 18px 18px;display:flex}.cp-active-phase{background:#19d3c50d;border:1px solid #19d3c526;border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;padding:14px;display:flex}.cp-active-phase-label{letter-spacing:.16em;text-transform:uppercase;color:#19d3c5;font-size:9px;font-weight:700}.cp-active-phase-name{color:#e7f4fb;margin:3px 0 0;font-family:Montserrat,sans-serif;font-size:14px;font-weight:700}.cp-prog-progress{flex-direction:column;flex-shrink:0;align-items:center;gap:5px;display:flex}.cp-prog-progress-ring{width:40px;height:40px;position:relative}.cp-prog-progress-pct{color:#19d3c5;justify-content:center;align-items:center;font-size:9px;font-weight:700;display:flex;position:absolute;inset:0}.cp-prog-progress-label{color:#8aa6b8;white-space:nowrap;font-size:10px}.cp-phase-complete{background:#3ddc9714;border:1px solid #3ddc9740;border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;padding:14px;display:flex}.cp-phase-complete--done{background:#19d3c50f;border-color:#19d3c533}.cp-phase-complete-title{color:#e7f4fb;margin:0 0 3px;font-size:13px;font-weight:700}.cp-phase-complete-sub{color:#8aa6b8;margin:0;font-size:11.5px;line-height:1.5}.cp-session{background:#ffffff05;border:1px solid #78c8e61a;border-radius:14px;transition:border-color .25s;overflow:hidden}.cp-session--done{border-color:#3ddc9740}.cp-session-header{justify-content:space-between;align-items:center;gap:.75rem;padding:12px 14px;display:flex}.cp-session-name{color:#e7f4fb;font-size:13px;font-weight:600}.cp-session-btn{color:#8aa6b8;cursor:pointer;background:#ffffff0a;border:1px solid #78c8e633;border-radius:8px;flex-shrink:0;padding:6px 13px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;transition:all .2s}.cp-session-btn:hover{color:#e7f4fb;background:#ffffff14}.cp-session-btn--done{color:#3ddc97;background:#3ddc971f;border-color:#3ddc974d}.cp-exercise-row{border-top:1px solid #78c8e612;gap:12px;padding:11px 14px;display:flex}.cp-exercise-num{color:#19d3c5;background:#19d3c51a;border:1px solid #19d3c533;border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;margin-top:2px;font-size:10px;font-weight:700;display:grid}.cp-exercise-detail{flex:1;min-width:0}.cp-exercise-top{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:3px;display:flex}.cp-exercise-name{color:#e7f4fb;font-size:13px;font-weight:600}.cp-exercise-prescription{color:#19d3c5;margin-bottom:3px;font-size:11px;font-weight:600;display:block}.cp-exercise-cue{color:#8aa6b8;font-size:11px;font-style:italic;line-height:1.5;display:block}.cp-ex-btn{cursor:pointer;border:1px solid;border-radius:6px;padding:4px 9px;font-family:Montserrat,sans-serif;font-size:10px;font-weight:700;transition:all .2s}.cp-ex-btn--video{color:#3aa6ff;background:#3aa6ff1a;border-color:#3aa6ff4d}.cp-ex-btn--video:hover{background:#3aa6ff33}.cp-ex-btn--pain{color:#ff6b6b;background:#ff6b6b1a;border-color:#ff6b6b4d}.cp-ex-btn--pain:hover{background:#ff6b6b33}.cp-pain-heading{letter-spacing:.06em;text-transform:uppercase;color:#5b7385;margin:0 0 10px;font-size:12px;font-weight:700}.cp-pain-grid{grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:14px;display:grid}.cp-pain-btn{cursor:pointer;background:#ffffff08;border:1px solid #78c8e626;border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;transition:all .2s;display:flex}.cp-pain-btn:hover{background:#ffffff12}.cp-pain-emoji{font-size:1.15rem}.cp-pain-num{color:#8aa6b8;font-size:10px;font-weight:700}.cp-pain-label{color:#5b7385;letter-spacing:.04em;font-size:8px;font-weight:600}.cp-pain-summary{background:#ffffff0a;border:1px solid #78c8e61f;border-radius:12px;align-items:center;gap:10px;margin-bottom:10px;padding:10px 14px;display:flex}.cp-pain-textarea{color:#e7f4fb;resize:none;background:#ffffff0a;border:1px solid #78c8e62e;border-radius:12px;outline:none;width:100%;padding:12px 14px;font-family:Montserrat,sans-serif;font-size:13px;transition:border-color .2s}.cp-pain-textarea:focus{border-color:#19d3c573}.cp-pain-textarea::placeholder{color:#5b7385}.cp-search-wrap{margin-bottom:4px;position:relative}.cp-search-icon{color:#5b7385;pointer-events:none;width:15px;height:15px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.cp-search-input{color:#e7f4fb;background:#ffffff0a;border:1px solid #78c8e626;border-radius:12px;outline:none;width:100%;padding:11px 14px 11px 36px;font-family:Montserrat,sans-serif;font-size:13px;transition:border-color .2s}.cp-search-input:focus{border-color:#19d3c566}.cp-search-input::placeholder{color:#5b7385}.cp-movement-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.cp-movement-card{cursor:pointer;background:#ffffff08;border:1px solid #78c8e61a;border-radius:16px;transition:border-color .2s,background .2s;overflow:hidden}.cp-movement-card:hover{background:#19d3c50a;border-color:#19d3c54d}.cp-movement-thumb{background:linear-gradient(135deg,#19d3c514,#3aa6ff0f);border-bottom:1px solid #78c8e614;justify-content:center;align-items:center;height:96px;font-size:1.75rem;display:flex;position:relative;overflow:hidden}.cp-movement-thumb-img{object-fit:cover;width:100%;height:100%;display:block}.cp-movement-play{color:#fff;pointer-events:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0412189e;border:1.5px solid #ffffffd9;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;padding-left:2px;font-size:12px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cp-movement-info{flex-direction:column;gap:4px;padding:10px 12px;display:flex}.cp-movement-name{color:#e7f4fb;font-size:12px;font-weight:700;line-height:1.3}.cp-movement-group{color:#8aa6b8;font-size:10px}.cp-movement-diff{letter-spacing:.06em;text-transform:uppercase;border-radius:6px;width:fit-content;margin-top:2px;padding:2px 7px;font-size:9px;font-weight:700;display:inline-block}.cp-mov-meta{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0;display:grid}.cp-mov-meta-item{background:#ffffff0a;border-radius:10px;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.cp-mov-meta-label{letter-spacing:.12em;text-transform:uppercase;color:#5b7385;font-size:9px;font-weight:700}.cp-mov-meta-value{color:#e7f4fb;font-size:13px;font-weight:600}.cp-mov-description{color:#8aa6b8;margin:0 0 1rem;font-size:13px;line-height:1.65}.cp-cue-list{margin-top:4px}.cp-cue-heading{letter-spacing:.1em;text-transform:uppercase;color:#5b7385;margin:0 0 8px;font-size:10px;font-weight:700}.cp-cue-item{color:#8aa6b8;border-top:1px solid #78c8e612;align-items:flex-start;gap:10px;padding:8px 0;font-size:13px;line-height:1.55;display:flex}.cp-cue-dot{background:#19d3c5;border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:6px}.cp-video-link{text-align:center;color:#3ddc97;background:#3ddc971a;border:1px solid #3ddc9740;border-radius:12px;margin-bottom:1rem;padding:14px;font-size:14px;font-weight:700;text-decoration:none;display:block}.cp-video-placeholder{text-align:center;color:#5b7385;background:#ffffff08;border:1px dashed #78c8e626;border-radius:12px;margin-bottom:1rem;padding:14px;font-size:13px;display:block}.cp-cal-schedule-btn{letter-spacing:.06em;color:#3aa6ff;cursor:pointer;white-space:nowrap;background:#3aa6ff1a;border:1px solid #3aa6ff47;border-radius:8px;align-items:center;gap:5px;padding:5px 11px;font-family:Montserrat,sans-serif;font-size:10px;font-weight:700;transition:all .2s;display:inline-flex}.cp-cal-schedule-btn:hover{background:#3aa6ff33;border-color:#3aa6ff80}.cp-cal-field-label{letter-spacing:.1em;text-transform:uppercase;color:#5b7385;margin:0 0 8px;font-size:10px;font-weight:700}.cp-day-picker{grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:16px;display:grid}.cp-day-btn{color:#8aa6b8;cursor:pointer;text-align:center;background:#ffffff08;border:1px solid #78c8e626;border-radius:9px;padding:8px 2px;font-family:Montserrat,sans-serif;font-size:10px;font-weight:700;transition:all .18s}.cp-day-btn:hover{color:#e7f4fb;background:#ffffff12}.cp-day-btn--active{color:#19d3c5;background:#19d3c51f;border-color:#19d3c566}.cp-cal-row{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px;display:grid}.cp-cal-field{flex-direction:column;display:flex}.cp-cal-input{color:#e7f4fb;background:#ffffff0a;border:1px solid #78c8e62e;border-radius:10px;outline:none;width:100%;padding:10px 12px;font-family:Montserrat,sans-serif;font-size:15px;font-weight:700;transition:border-color .2s}.cp-cal-input:focus{border-color:#19d3c573}.cp-cal-input::-webkit-calendar-picker-indicator{filter:invert(.6);cursor:pointer}.cp-dur-picker{gap:5px;display:flex}.cp-dur-btn{color:#8aa6b8;cursor:pointer;text-align:center;background:#ffffff08;border:1px solid #78c8e626;border-radius:9px;flex:1;padding:9px 4px;font-family:Montserrat,sans-serif;font-size:10px;font-weight:700;transition:all .18s}.cp-dur-btn:hover{color:#e7f4fb;background:#ffffff12}.cp-dur-btn--active{color:#19d3c5;background:#19d3c51f;border-color:#19d3c566}.cp-cal-preview{color:#8aa6b8;text-align:center;background:#ffffff08;border:1px solid #78c8e61a;border-radius:10px;margin-bottom:16px;padding:10px;font-size:12px}.cp-cal-preview b{color:#e7f4fb}.cp-cal-actions{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;display:grid}.cp-cal-btn{cursor:pointer;border:1px solid;border-radius:14px;justify-content:center;align-items:center;gap:7px;padding:13px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:700;transition:all .2s;display:flex}.cp-cal-btn--ics{color:#19d3c5;background:#19d3c51a;border-color:#19d3c54d}.cp-cal-btn--ics:hover{background:#19d3c533;border-color:#19d3c58c}.cp-cal-btn--google{color:#3aa6ff;background:#3aa6ff1a;border-color:#3aa6ff4d}.cp-cal-btn--google:hover{background:#3aa6ff33;border-color:#3aa6ff8c}.cp-cal-hint{color:#5b7385;text-align:center;margin:0;font-size:10.5px;line-height:1.5}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:.5rem;max-width:400px;display:flex;position:fixed;top:1rem;right:1rem}.toast{pointer-events:auto;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.85rem;line-height:1.4;animation:.3s ease-out toast-in;display:flex;box-shadow:0 4px 20px #0000004d}.toast--success{color:#34d399;background:#34d39926;border:1px solid #34d3994d}.toast--error{color:#f87171;background:#f8717126;border:1px solid #f871714d}.toast--info{color:#4aaeff;background:#4aaeff26;border:1px solid #4aaeff4d}.toast-icon{flex-shrink:0;font-size:.9rem;font-weight:700}@keyframes toast-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.spinner-wrap{color:var(--text-muted);flex-direction:column;align-items:center;gap:.75rem;display:flex}.spinner{animation:.8s linear infinite spin}.spinner-label{font-size:.85rem}.page-spinner{justify-content:center;align-items:center;width:100%;min-height:300px;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:200px;padding:3rem 1.5rem;display:flex}.empty-state-icon{width:48px;height:48px;color:var(--text-muted);opacity:.4;margin-bottom:1rem}.empty-state-icon svg{width:100%;height:100%}.empty-state-title{color:var(--text-secondary);margin:0 0 .35rem;font-size:1rem;font-weight:600}.empty-state-message{color:var(--text-muted);max-width:320px;margin:0;font-size:.85rem;line-height:1.5}@media (width<=768px){.page-header,.client-detail-header{flex-direction:column;align-items:flex-start;gap:.75rem}.client-detail-header>div:last-child{align-items:flex-start;margin-left:0}.client-edit-grid,.settings-fields{grid-template-columns:1fr!important}.users-card{flex-direction:column;align-items:flex-start;gap:.75rem}.users-card-actions{align-self:flex-end}.toast-container{max-width:none;left:.5rem;right:.5rem}.builder-header{flex-direction:column;align-items:stretch;gap:.75rem}.builder-name-input{width:100%;min-width:0;font-size:1.15rem}.builder-actions{flex-wrap:wrap;gap:.5rem}.builder-split-screen{flex-direction:column}.builder-split-left{border-right:none;border-bottom:1px solid var(--border-strong);height:40vh;min-height:250px}.builder-split-right{height:60vh}.builder-split-right-inner{padding:1rem .75rem 2rem}.phase-meta-panel{padding:.75rem}.phase-weeks-control{flex-wrap:wrap}.session-block{padding:.75rem}.builder-ex-row{gap:.5rem}.ex-top-row{flex-wrap:wrap;gap:.5rem}.builder-view-toggle{order:-1}}@media (width<=480px){.page-title{font-size:1.25rem}.client-detail-name{font-size:1.1rem}.btn,.btn-primary{padding:.5rem .75rem;font-size:.8rem}.builder-name-input{font-size:1rem}.builder-actions .btn,.builder-actions .btn-ghost{padding:.4rem .65rem;font-size:.78rem}.phase-tab-item{min-height:34px;padding:.4rem .65rem;font-size:.78rem}.builder-ex-row .exercise-num{display:none}.ex-field-label{font-size:.72rem}.small-num-input{width:44px;font-size:.82rem}.instruction-input{font-size:.8rem}.builder-meta{display:none}.builder-source-badge{padding:.2rem .5rem;font-size:.7rem}}.popia-overlay{z-index:9999;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#04141eeb;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.popia-modal{background:var(--surface,#0d2136);border:1px solid var(--border,#ffffff14);border-radius:14px;flex-direction:column;width:95%;max-width:640px;max-height:90vh;display:flex;overflow:hidden}.popia-header{border-bottom:1px solid var(--border,#ffffff14);padding:1.5rem 1.5rem .75rem}.popia-header h2{color:var(--text,#e0eaf5);margin:0 0 .25rem;font-size:1.25rem}.popia-subtitle{color:var(--text-muted,#6b8aab);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.82rem;font-weight:600}.popia-body{color:var(--text-muted,#a0b4c8);flex:1;padding:1.25rem 1.5rem;font-size:.88rem;line-height:1.7;overflow-y:auto}.popia-body h3{color:var(--text,#e0eaf5);margin:1.25rem 0 .5rem;font-size:.95rem;font-weight:600}.popia-body p{margin:0 0 .75rem}.popia-intro{color:var(--text,#e0eaf5);font-weight:500}.popia-body ul{margin:0 0 .75rem 1.25rem;padding:0}.popia-body li{margin-bottom:.35rem}.popia-footer{border-top:1px solid var(--border,#ffffff14);flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem 1.5rem;display:flex}.popia-checkbox-label{color:var(--text,#e0eaf5);cursor:default;align-items:flex-start;gap:.5rem;font-size:.88rem;display:flex}.popia-checkbox-label input[type=checkbox]{accent-color:#19d3c5;width:18px;min-width:18px;height:18px;margin-top:2px}.popia-accept-btn{width:100%;max-width:300px;padding:.75rem;font-size:.95rem;font-weight:600}.popia-accept-btn:disabled{opacity:.4;cursor:not-allowed}.popia-footer-note{color:var(--text-muted,#6b8aab);margin:0;font-size:.78rem}.mobile-bottom-nav{display:none}@media (width<=700px){.mobile-bottom-nav{z-index:20;background:var(--surface);border-top:1px solid var(--border);padding:.35rem 0 calc(.35rem + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav-item{color:var(--text-subtle);letter-spacing:.03em;transition:color var(--transition);flex-direction:column;align-items:center;gap:.2rem;min-width:56px;padding:.4rem .75rem;font-size:.62rem;font-weight:600;text-decoration:none;display:flex}.mobile-nav-icon{justify-content:center;align-items:center;width:22px;height:22px;display:flex}.mobile-nav-item.active{color:var(--primary)}.mobile-nav-item.active .mobile-nav-icon{background:var(--primary-glow);border-radius:8px;padding:2px}.topnav-nav{display:none!important}.topnav-logo{flex:unset}.bio-main{padding-bottom:calc(4rem + env(safe-area-inset-bottom));margin-left:0}.bio-topnav{gap:.5rem;padding:0 .75rem}.topnav-logo-icon{width:36px;height:36px}.dash-greeting{font-size:1.35rem}.dash-hero-actions{flex-direction:column;width:100%}.dash-hero-actions .btn,.dash-hero-actions .btn-ghost{justify-content:center;width:100%}.stats-banner-num{font-size:2rem}.stats-banner-summary{min-width:unset;padding:1rem}.stats-banner-cards{grid-template-columns:1fr 1fr;display:grid}.stats-mini-card,.stats-mini-card-btn{border-right:none;border-bottom:1px solid var(--border);min-width:0}.stats-mini-card-btn:nth-child(odd){border-right:1px solid var(--border)}.stats-mini-num{font-size:1.5rem}.dash-chart-header{flex-direction:column;align-items:flex-start;gap:.5rem}.dash-donut-wrap{flex-direction:column;align-items:center;gap:.75rem}.dash-client-right{display:none}.dash-bottom-header>div{flex-direction:column;gap:.5rem;align-items:flex-start!important}.dash-view-all{align-self:flex-end}.client-row{flex-wrap:wrap;gap:.5rem;padding:.75rem .875rem}.client-avatar{width:36px;height:36px;font-size:.85rem}.client-info{flex:1;min-width:0}.client-info strong{font-size:.85rem}.client-info span{white-space:normal;word-break:break-word;font-size:.75rem}.client-row-right{flex-wrap:wrap;gap:.5rem;width:100%;padding-left:calc(36px + .5rem)}.client-row-right .chevron{display:none}.client-detail-avatar{width:48px;height:48px;font-size:1.1rem}.client-detail-name{font-size:1.15rem}.client-detail-meta{gap:.4rem;font-size:.78rem}.tabs{gap:0;margin-bottom:1rem}.tab{min-height:40px;padding:.6rem .875rem;font-size:.78rem}.overview-stats-grid{grid-template-columns:1fr 1fr;gap:.5rem}.overview-stat{padding:.875rem .75rem}.overview-stat-value{font-size:.92rem}.overview-quick-actions{flex-direction:column;gap:.5rem}.overview-quick-actions .btn,.overview-quick-actions .btn-ghost{justify-content:center;width:100%}.card{padding:1rem}.page-title{font-size:1.2rem}.page-header{flex-direction:column;align-items:stretch;gap:.5rem}.btn,.btn-ghost{min-height:44px}.info-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.stat-card{padding:.875rem .75rem}.stat-number{font-size:1.5rem}.search-input,.login-input,.dash-search-input,.quick-find-input{font-size:16px}.quick-find-modal{width:95%;margin:0 auto}.dash-lb-grid{grid-template-columns:1fr}.programme-list-card-body{flex-direction:column;align-items:flex-start;gap:.5rem}.client-edit-card{padding:1rem}.client-edit-grid{grid-template-columns:1fr}.back-link{margin-bottom:.75rem}.phase-badge{padding:.2rem .5rem;font-size:.68rem}.login-container{flex-direction:column;min-height:auto}.login-visual{min-height:160px;padding:1.5rem}.login-visual img{width:200px}}.assessment-form{flex-direction:column;gap:1.25rem;max-width:960px;display:flex}.assessment-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;padding-bottom:1.25rem;display:flex}.assessment-header h2{letter-spacing:-.01em;margin:0;font-size:1.5rem;font-weight:800}.assessment-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:1rem;padding:1.5rem;transition:border-color .18s;display:flex}.assessment-section:focus-within{border-color:var(--border-strong)}.assessment-section h3{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin:0 0 .25rem;font-size:.72rem;font-weight:700}.assessment-section h4{color:var(--accent);text-transform:uppercase;letter-spacing:.07em;margin:0 0 .75rem;font-size:.82rem;font-weight:700}.form-group{flex-direction:column;gap:.45rem;display:flex}.form-group label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:700}.form-group input[type=text],.form-group input[type=date],.form-group textarea,.form-group select{background:var(--surface-alt);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);outline:none;min-height:44px;padding:.7rem .875rem;font-family:inherit;font-size:.88rem;transition:border-color .18s,box-shadow .18s}.form-group input[type=text]:focus,.form-group input[type=date]:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.form-group textarea{resize:vertical;min-height:100px;line-height:1.6}.form-group select{cursor:pointer;appearance:auto}.info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.diagnosis-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.test-category{margin-bottom:1.25rem}.test-category:last-child{margin-bottom:0}.tests-grid{flex-direction:column;gap:.5rem;display:flex}.test-row{background:var(--surface-alt);border-radius:var(--radius-sm);border:1px solid var(--border);align-items:center;gap:.875rem;min-height:48px;padding:.6rem .875rem;transition:border-color .18s;display:flex}.test-row:hover{border-color:var(--border-strong)}.test-row:focus-within{border-color:#1e90ff4d}.test-name{min-width:160px;color:var(--text);flex-shrink:0;font-size:.875rem;font-weight:600}.test-name-input{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-xs);min-width:150px;color:var(--text);outline:none;flex-shrink:0;min-height:36px;padding:.45rem .7rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:border-color .18s}.test-name-input:focus{border-color:var(--primary)}.test-name-input::placeholder{color:var(--text-subtle)}.test-checkboxes{flex-shrink:0;gap:.75rem;display:flex}.test-checkboxes label{cursor:pointer;color:var(--text-muted);-webkit-user-select:none;user-select:none;letter-spacing:.02em;align-items:center;gap:.35rem;min-height:28px;font-size:.78rem;font-weight:700;transition:color .15s;display:flex}.test-checkboxes label input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--primary);flex-shrink:0}.test-checkboxes label:has(input:checked){color:var(--primary)}.test-notes{color:var(--text);outline:none;flex:1;font-family:inherit;transition:border-color .18s;background:var(--surface)!important;border:1px solid var(--border)!important;border-radius:var(--radius-xs)!important;min-height:auto!important;padding:.45rem .7rem!important;font-size:.82rem!important}.test-notes:focus{border-color:var(--primary)!important}.test-notes::placeholder{color:var(--text-subtle)}.section-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.section-header-row h3{margin:0}.form-actions{flex-wrap:wrap;gap:.75rem;padding:.5rem 0 .25rem;display:flex}.assessments-list{flex-direction:column;gap:.875rem;display:flex}.assessment-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;transition:all .18s}.assessment-card:hover{background:var(--surface-alt);border-color:#1e90ff4d}.assessment-header-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;padding-bottom:.875rem;display:flex}.assessment-header-row h3{letter-spacing:-.01em;margin:0 0 .2rem;font-size:1rem;font-weight:700}.assessment-header-row p{margin:0;font-size:.82rem}.assessment-actions{flex-shrink:0;gap:.5rem;display:flex}.assessment-preview{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.875rem;display:grid}.preview-item{flex-direction:column;gap:.2rem;font-size:.84rem;display:flex}.preview-item strong{color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;font-size:.67rem;font-weight:700}.assessment-type-grid{flex-wrap:wrap;gap:.5rem;display:flex}.type-chip{background:var(--surface-alt);border:1px solid var(--border-strong);color:var(--text-muted);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;min-height:36px;padding:.45rem 1rem;font-family:inherit;font-size:.8rem;font-weight:600;transition:all .18s;display:inline-flex}.type-chip:hover{color:var(--text);border-color:#ffffff38}.type-chip.active{background:var(--primary-glow);color:var(--primary);border-color:#1e90ff80;font-weight:700}.custom-category-empty{background:var(--surface-alt);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);text-align:center;padding:1.5rem}.custom-categories-list{flex-direction:column;gap:1.25rem;display:flex}.custom-category-block{background:var(--surface-alt);border:1px solid var(--border-strong);border-radius:var(--radius-sm);flex-direction:column;gap:.875rem;padding:1rem;display:flex}.custom-category-header{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding-bottom:.875rem;display:flex}.custom-category-name-input{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-xs);color:var(--text);outline:none;flex:1;min-height:40px;padding:.5rem .75rem;font-family:inherit;font-size:.9rem;font-weight:700;transition:border-color .18s}.custom-category-name-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.custom-category-name-input::placeholder{color:var(--text-subtle);font-weight:500}.custom-add-test-btn{align-self:flex-start;margin-top:.25rem}.loading-state{text-align:center;color:var(--text-muted);padding:2rem;font-size:.9rem}@media (width<=768px){.assessment-header{flex-direction:column;align-items:flex-start}.test-row{flex-wrap:wrap;gap:.6rem;min-height:auto;padding:.75rem}.test-name,.test-name-input{min-width:unset;flex-shrink:unset;width:100%}.test-checkboxes{justify-content:space-between;width:100%}.test-notes{width:100%;min-width:unset}.assessment-header-row{flex-direction:column}.assessment-actions{width:100%}.info-grid,.diagnosis-grid{grid-template-columns:1fr}.assessment-type-grid{gap:.35rem}.type-chip{padding:.4rem .75rem;font-size:.74rem}}.searchable-dropdown{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);z-index:200;flex-direction:column;max-height:240px;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 28px #0000002e}.searchable-option{text-align:left;width:100%;color:var(--text);cursor:pointer;white-space:normal;word-break:break-word;background:0 0;border:none;padding:.45rem .875rem;font-family:inherit;font-size:.84rem;line-height:1.35;transition:background .1s;display:block}.searchable-field-input{background:var(--surface-alt);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;color:var(--text);outline:none;padding:.65rem .875rem;font-family:inherit;font-size:.88rem;transition:border-color .18s,box-shadow .18s}.searchable-field-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.searchable-field-input::placeholder{color:var(--text-subtle)}.searchable-option:hover{background:var(--bg)}.searchable-option.selected{color:var(--primary);background:#4aaeff12;font-weight:600}.searchable-option-clear{color:var(--text-muted);border-bottom:1px solid var(--border);font-size:.82rem;font-style:italic}.searchable-empty{color:var(--text-muted);text-align:center;padding:.875rem;font-size:.82rem}.searchable-search-input{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--text);background:0 0;outline:none;padding:.5rem .75rem;font-family:inherit;font-size:.85rem}.type-select-trigger{background:var(--surface-alt);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;justify-content:space-between;align-items:center;gap:.625rem;min-width:220px;padding:.65rem .875rem;font-family:inherit;font-size:.9rem;transition:border-color .15s,box-shadow .15s;display:inline-flex}.type-select-trigger:hover{border-color:var(--primary)}.type-select-trigger:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}.test-checkbox-label{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.3rem;font-size:.78rem;font-weight:600;transition:color .15s;display:inline-flex}.test-checkbox-label.checked{color:var(--primary)}.draft-badge{text-transform:uppercase;letter-spacing:.06em;color:#f59e0b;background:#fbbf241f;border:1px solid #fbbf2459;border-radius:4px;align-items:center;padding:.15rem .5rem;font-size:.68rem;font-weight:700;line-height:1;display:inline-flex}.assessment-client-pick-row{border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--text-muted);background:0 0;border:1px solid #0000;align-items:center;gap:.75rem;padding:.625rem .75rem;font-family:inherit;transition:background .12s,border-color .12s;display:flex}.assessment-client-pick-row:hover{background:var(--surface-alt);border-color:var(--border)}.pick-client-name{color:#9aabb8;font-size:.88rem;font-weight:600;line-height:1.3}.pick-client-meta{color:var(--text-subtle);margin-top:.1rem;font-size:.76rem}.pick-client-chevron{color:var(--text-subtle);flex-shrink:0;font-size:1rem}.assessment-pick-avatar{background:var(--primary-glow);width:34px;height:34px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}
