.home{--home-hero-text: rgba(255, 255, 255, .94);overflow-x:clip}.container{max-width:1160px;margin:0 auto;padding:0 clamp(1rem,4vw,1.5rem)}.hero{position:relative;color:var(--home-hero-text);overflow:hidden}.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 120% 80% at 20% 20%,rgba(45,157,120,.35),transparent 50%),radial-gradient(ellipse 90% 70% at 85% 60%,rgba(196,160,53,.12),transparent 45%),linear-gradient(165deg,#062a32,#0d4f5c 42%,#0a3d47)}.hero-bg:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M60 0H0v60' fill='none' stroke='rgba(255,255,255,0.04)' stroke-width='1'/%3E%3C/svg%3E");opacity:.9;pointer-events:none}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,5vw,4rem);align-items:center;padding:clamp(3rem,8vw,5.5rem) 0 clamp(4rem,10vw,6rem)}.hero-copy{width:100%;max-width:38rem;min-width:0}.hero-eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#ffffffa6;margin-bottom:1rem}[dir=rtl] .hero-eyebrow{letter-spacing:0;text-transform:none}.hero-title{font-family:var(--font-display);font-size:clamp(2rem,4.5vw,3.15rem);font-weight:700;line-height:1.15;letter-spacing:-.02em;margin-bottom:1.25rem;overflow-wrap:anywhere}[dir=rtl] .hero-title{letter-spacing:0}.hero-lead{font-size:1.05rem;line-height:1.65;color:#ffffffd1;margin-bottom:1.5rem;overflow-wrap:break-word}.hero-truststrip{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin-bottom:2rem;padding:0;font-size:.8rem;font-weight:500;color:#ffffffb3}.hero-truststrip li{display:flex;align-items:center;gap:.4rem}.hero-truststrip li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);opacity:.9}.hero-cta-row{margin-top:1rem}.hero-visual{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;min-width:0}.hero-brand-mark{width:min(100%,300px);border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(13,79,92,.12);background:linear-gradient(165deg,#eef6f3 0%,var(--surface) 45%,var(--surface-elevated) 100%);box-shadow:0 24px 64px #00000047,0 0 0 1px #ffffffa6 inset,0 12px 40px #2d9d781f}.hero-logo-img{width:100%;height:auto;display:block}.hero-visual-caption{font-size:.8rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#ffffff73}[dir=rtl] .hero-visual-caption{letter-spacing:0;text-transform:none}.access-section{margin-top:.5rem}.access-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;max-width:720px;align-items:stretch;min-width:0}.access-card{background:#ffffff14;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:1.35rem 1.35rem 1.25rem;transition:border-color .2s ease,background .2s ease;display:flex;flex-direction:column;height:100%;gap:1.1rem}.access-card:hover{border-color:#ffffff47;background:#ffffff1a}.access-card-top{flex:1 1 auto;min-height:0}.access-card-badge{display:inline-block;font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.25rem .55rem;border-radius:999px;background:#ffffff26;color:#fffffff2;margin-bottom:.65rem}[dir=rtl] .access-card-badge{letter-spacing:0;text-transform:none}.access-card-badge--clinical{background:#2d9d7840;color:#b8ebd9}.access-card-title{font-size:1.2rem;font-weight:700;margin:0 0 .35rem;color:#fff}.access-card-desc{margin:0;font-size:.88rem;line-height:1.45;color:#ffffffb8}.access-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:auto;flex-shrink:0}.access-btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.92rem;font-weight:600;text-decoration:none;transition:background .2s,color .2s,border-color .2s}.access-btn--primary{background:#fff;color:var(--primary);border:1px solid transparent}.access-btn--primary:hover{background:#eef8f5;color:var(--primary-hover)}.access-btn--ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}.access-btn--ghost:hover{background:#ffffff14;border-color:#ffffff80}.btn{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block;transition:transform .2s,box-shadow .2s;text-align:center;font-family:var(--font-sans)}.btn-primary{background:var(--accent);color:var(--white)}.btn-primary:hover{background:var(--secondary-green-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-large{padding:1rem 1.75rem;font-size:1.05rem}.features-section{padding:clamp(3.5rem,8vw,5.5rem) 0;background:var(--surface-elevated)}.section-header{text-align:center;max-width:40rem;margin:0 auto 3rem}.section-header--left{text-align:start;margin-inline-start:0}.section-title{font-family:var(--font-display);font-size:clamp(1.75rem,3.5vw,2.35rem);font-weight:700;color:var(--ink);margin-bottom:.75rem;letter-spacing:-.02em}[dir=rtl] .section-title{letter-spacing:0}.section-subtitle{font-size:1.02rem;color:var(--ink-muted);line-height:1.6}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}.feature-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.5rem 1.4rem;transition:border-color .2s,box-shadow .2s}.feature-card:hover{border-color:#0d4f5c2e;box-shadow:var(--shadow-md)}.feature-card-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--primary);margin-bottom:1rem}.home-feature-icon-svg{width:24px;height:24px}.feature-card-title{font-size:1.08rem;font-weight:700;color:var(--ink);margin-bottom:.5rem}.feature-card-text{font-size:.92rem;color:var(--ink-muted);line-height:1.6;margin:0}.about-section{padding:clamp(3.5rem,8vw,5.5rem) 0;background:var(--surface)}.about-grid{display:grid;grid-template-columns:1fr minmax(240px,300px);gap:2.5rem;align-items:start}.about-h3{font-size:1.15rem;font-weight:700;margin:1.5rem 0 1rem;color:var(--ink)}.about-image{width:100%;max-width:760px;height:auto;max-height:420px;object-fit:cover;display:block;border-radius:var(--radius-md);border:1px solid var(--border)}.video-block{margin-top:2rem}.video-frame{border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border);background:#000;box-shadow:var(--shadow-lg)}.about-video{width:100%;height:auto;display:block;vertical-align:middle}.about-prose{margin-top:1.75rem;font-size:.98rem;color:var(--ink-muted);line-height:1.7}.about-prose p{margin-bottom:1rem}.about-prose strong{color:var(--ink)}.pillar-card{background:var(--surface-elevated);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.25rem 1.15rem;margin-bottom:1rem;box-shadow:var(--shadow-sm)}.pillar-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--primary);margin:0 0 .5rem}[dir=rtl] .pillar-label{letter-spacing:0;text-transform:none}.pillar-text{font-size:.88rem;color:var(--ink-muted);line-height:1.55;margin:0}.contact-section{padding:clamp(3.5rem,8vw,5rem) 0;background:var(--surface-elevated);border-top:1px solid var(--border)}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;max-width:900px;margin:0 auto}.contact-card{padding:1.35rem 1.25rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface)}.contact-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:var(--primary);margin:0 0 .4rem}[dir=rtl] .contact-label{letter-spacing:0;text-transform:none}.contact-card p{margin:0;font-size:.95rem;color:var(--ink-muted)}@media(max-width:900px){.hero-grid{grid-template-columns:1fr;text-align:start;row-gap:clamp(1rem,3.5vw,1.75rem);padding-top:clamp(2rem,6vw,3.75rem);padding-bottom:clamp(3rem,8vw,5.5rem)}.hero-visual{order:-1;margin-bottom:0;gap:.85rem}.hero-brand-mark{width:min(200px,68vw)}.hero-title{margin-top:.2rem}.about-grid{grid-template-columns:1fr}}@media(max-width:600px){.hero-grid{padding-top:clamp(1.5rem,5vw,2.5rem);row-gap:clamp(.85rem,3vw,1.35rem)}.hero-brand-mark{width:min(176px,62vw)}.hero-visual-caption{font-size:.72rem}.hero-title{margin-bottom:1rem}.hero-truststrip{flex-direction:column;align-items:flex-start}}.auth-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 180px);padding:2rem clamp(1rem,4vw,2rem);background:radial-gradient(ellipse 80% 60% at 10% 0%,rgba(13,79,92,.07),transparent 55%),radial-gradient(ellipse 70% 50% at 100% 100%,rgba(45,157,120,.08),transparent 50%),var(--surface)}.auth-card{background:var(--surface-elevated);padding:clamp(1.75rem,4vw,2.5rem);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border);width:100%;max-width:min(440px,100%)}.back-link{display:inline-flex;align-items:center;gap:.35rem;color:var(--primary);text-decoration:none;font-size:.88rem;font-weight:600;margin-bottom:1.25rem;transition:color .2s}.back-link:hover{color:var(--primary-hover);text-decoration:underline}.login-header{text-align:center;margin-bottom:1.75rem}.login-header .logo-icon{font-size:2rem;display:block;margin-bottom:.5rem}.auth-card h2{font-family:var(--font-display);text-align:center;color:var(--ink);margin-bottom:.4rem;font-size:1.65rem;font-weight:700;letter-spacing:-.02em}[dir=rtl] .auth-card h2{letter-spacing:0}.auth-subtitle{text-align:center;color:var(--ink-muted);margin-bottom:0;font-size:.94rem;line-height:1.5}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.45rem}.form-group label{color:var(--ink);font-weight:600;font-size:.88rem}.form-group input,.form-group select{padding:.8rem .9rem;border:1px solid var(--medium-gray);border-radius:var(--radius-sm);font-size:.98rem;transition:border-color .2s,box-shadow .2s;font-family:var(--font-sans);background:var(--surface-elevated);color:var(--ink)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0d4f5c1f}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem;flex-wrap:wrap;gap:.75rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--ink-muted);font-size:.88rem}.checkbox-label input[type=checkbox]{width:auto;cursor:pointer}.forgot-password{color:var(--primary);text-decoration:none;font-size:.86rem;font-weight:600;transition:color .2s}.forgot-password:hover{color:var(--primary-hover);text-decoration:underline}.form-hint{display:block;margin-top:.35rem;font-size:.82rem;color:var(--ink-muted)}.btn{font-family:var(--font-sans);border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s}.btn-block{width:100%;margin-top:.35rem;padding:.85rem 1.25rem;font-size:1rem}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none}.auth-footer{text-align:center;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border);color:var(--ink-muted);font-size:.9rem}.auth-footer a{color:var(--primary);text-decoration:none;font-weight:700}.auth-footer a:hover{text-decoration:underline}.error-message{background:#b4232c14;color:var(--error);padding:.85rem 1rem;border-radius:var(--radius-sm);margin-bottom:1rem;border:1px solid rgba(180,35,44,.22);text-align:center;font-size:.9rem;font-weight:500}.info-message{background:#0d4f5c14;border-inline-start:4px solid var(--primary, #0d4f5c);padding:1rem;border-radius:var(--radius-sm, 8px);margin:1rem 0}.info-message p{margin:0;color:var(--primary, #0d4f5c);font-size:.95rem;line-height:1.5}.therapist-select-wrapper{position:relative;width:100%}.therapist-select-wrapper input[type=text]{width:100%;padding:.75rem;border:2px solid var(--border-color, #e0e0e0);border-radius:8px;font-size:1rem;transition:border-color .2s ease}.therapist-select-wrapper input[type=text]:focus{outline:none;border-color:var(--primary, #0d4f5c)}.therapist-dropdown{position:absolute;top:100%;inset-inline-start:0;inset-inline-end:0;background:#fff;border:2px solid var(--border-color, #e0e0e0);border-radius:8px;margin-top:.25rem;max-height:300px;overflow-y:auto;z-index:1000;box-shadow:0 4px 6px #0000001a}.therapist-option{padding:1rem;cursor:pointer;border-bottom:1px solid var(--border-color, #e0e0e0);transition:background-color .2s ease}.therapist-option:last-child{border-bottom:none}.therapist-option:hover{background-color:var(--bg-light, #f5f5f5)}.therapist-option.selected{background-color:var(--primary-blue, #2563eb);color:#fff}.therapist-name{font-weight:600;font-size:1rem;margin-bottom:.25rem}.therapist-details{font-size:.875rem;opacity:.8}.therapist-option.selected .therapist-details{opacity:.9}.guide-avatar{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1rem}.avatar-circle{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--secondary-green) 100%);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);transition:transform .2s ease}@media(prefers-reduced-motion:reduce){.avatar-circle{transition:none}}.avatar-emoji{font-size:2rem;display:block}.avatar-message{background:var(--white);padding:.75rem 1rem;border-radius:12px;box-shadow:var(--shadow-sm);max-width:250px;text-align:center;font-size:.9rem;color:var(--text-dark);position:relative;animation:fadeIn .3s ease}.avatar-message:before{content:"";position:absolute;top:-8px;inset-inline-start:50%;transform:translate(-50%);width:0;height:0;border-inline-start:8px solid transparent;border-inline-end:8px solid transparent;border-bottom:8px solid var(--white)}@media(prefers-reduced-motion:reduce){.avatar-message{animation:none}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.progress-container{width:100%;margin:1rem 0}.progress-label{font-size:.9rem;color:var(--text-dark);margin-bottom:.5rem;font-weight:500}.progress-bar-wrapper{display:flex;flex-direction:column;gap:.5rem}.progress-bar{width:100%;height:12px;background:var(--light-gray);border-radius:6px;overflow:hidden;position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-blue) 0%,var(--secondary-green) 100%);border-radius:6px;transition:width .3s ease;position:relative;display:flex;align-items:center;justify-content:flex-end;padding-inline-end:4px}.progress-fill.complete{background:linear-gradient(90deg,var(--secondary-green) 0%,var(--success) 100%)}.progress-sticker{background:var(--white);color:var(--success);width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;animation:popIn .3s ease}.progress-text{font-size:.85rem;color:var(--text-light);text-align:center}@media(prefers-reduced-motion:reduce){.progress-fill{transition:none}.progress-sticker{animation:none}}@keyframes popIn{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:6px;border:1px solid;font-size:.875rem;font-weight:500;transition:opacity .2s ease}.status-badge:hover{opacity:.8}.status-icon{font-size:1rem;line-height:1}.status-label{line-height:1}@media(prefers-reduced-motion:reduce){.status-badge{transition:none}}.btn{position:relative;transition:transform .1s ease,box-shadow .2s ease}.btn:active:not(:disabled){transform:scale(.97)}.btn.loading{cursor:wait;opacity:.7}.btn.success{background:var(--success);cursor:default}.btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;margin-inline-end:.5rem;vertical-align:middle}.btn-check{display:inline-block;margin-inline-end:.5rem;font-weight:700}@media(prefers-reduced-motion:reduce){.btn{transition:none}.btn:active:not(:disabled){transform:none}.btn-spinner{animation:none;border-top-color:#fff}}@keyframes spin{to{transform:rotate(360deg)}}.onboarding-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .3s ease}.onboarding-card{background:var(--white);border-radius:16px;padding:2rem;max-width:500px;width:100%;box-shadow:var(--shadow-xl);animation:slideUp .3s ease}.onboarding-card.transitioning{opacity:.5}.onboarding-header{text-align:center;margin-bottom:2rem}.onboarding-header h2{color:var(--text-dark);margin:1rem 0 .5rem;font-size:1.5rem}.onboarding-description{color:var(--text-light);font-size:1rem;line-height:1.6}.onboarding-content{margin-bottom:2rem;min-height:100px}.onboarding-footer{display:flex;flex-direction:column;gap:1rem}.onboarding-actions{display:flex;gap:1rem;justify-content:flex-end}[dir=rtl] .onboarding-actions{justify-content:flex-start}@media(prefers-reduced-motion:reduce){.onboarding-overlay,.onboarding-card{animation:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.game-chrome{border:2px solid var(--primary-blue, #2563eb);border-radius:16px;padding:1rem 1.25rem;background:#ffffffeb;margin-bottom:1rem}.game-chrome__header{margin-bottom:.75rem}.game-chrome__title{margin:0 0 .5rem;font-size:1.15rem}.game-chrome__meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.game-chrome__pill{font-size:.8rem;padding:.2rem .55rem;border-radius:999px;background:#2563eb1f;color:var(--primary-blue, #1d4ed8)}.game-chrome__pill--muted{background:#0000000f;color:#444}.game-chrome__pill--ok{background:#00d9a526;color:#047857}.game-chrome__feedback{margin:0 0 .75rem;font-size:.95rem;min-height:1.25rem}.game-chrome__feedback--ok{color:#047857}.game-chrome__feedback--neutral{color:#6b7280}.game-chrome__body--disabled{opacity:.55;pointer-events:none}.game-chrome__body{min-height:120px}.game-tap-btn{font-size:1.1rem;padding:.85rem 1.25rem;border-radius:12px;border:none;cursor:pointer;background:var(--primary-blue, #2563eb);color:#fff;margin:.25rem}.game-tap-btn:disabled{opacity:.5;cursor:not-allowed}.game-tap-btn--go{background:#16a34a}.game-tap-btn--stop{background:#dc2626}.game-choice-grid{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:.5rem}.game-choice{min-width:3.5rem;min-height:3.5rem;font-size:1.75rem;border-radius:12px;border:2px solid #e5e7eb;background:#fff;cursor:pointer}.game-choice:disabled{opacity:.45;cursor:not-allowed}.game-cue{text-align:center;font-size:3rem;margin:1rem 0;min-height:4rem}.game-hint{text-align:center;color:#6b7280;font-size:.9rem}.ball-return{width:100%}.ball-return__meta{display:flex;justify-content:center;flex-wrap:wrap;gap:.45rem;margin:.35rem 0 .75rem}.ball-return__meta span{border-radius:999px;background:#0d4f5c1a;color:var(--primary, #0d4f5c);font-size:.78rem;font-weight:700;padding:.2rem .55rem}.ball-return__controls{display:grid;gap:.55rem;margin:0 0 .8rem}.ball-return__control-group{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.4rem}.ball-return__control-label{color:var(--text-dark, #0c1222);font-size:.82rem;font-weight:900;margin-inline-end:.15rem}.ball-return__control-btn{min-height:2.4rem;border:2px solid rgba(13,79,92,.22);border-radius:999px;background:#fff;color:var(--primary, #0d4f5c);cursor:pointer;font-size:.82rem;font-weight:900;padding:.42rem .72rem}.ball-return__control-btn--active{border-color:var(--primary, #0d4f5c);background:#2d9d7826;box-shadow:0 0 0 3px #2d9d781f}.ball-return__control-btn:disabled{cursor:not-allowed;opacity:.55}[dir=rtl] .ball-return__meta,[dir=rtl] .ball-return__controls{direction:rtl}[dir=rtl] .ball-return__control-group{text-align:start}.ball-return__stage{position:relative;direction:ltr;overflow:hidden;min-height:360px;border:2px solid rgba(12,18,34,.12);border-radius:18px;background:#f7f5f2;touch-action:none;cursor:crosshair;isolation:isolate}.ball-return__stage--isometric{background:linear-gradient(135deg,#ffffff6b,#0c12220a),#f7f5f2;box-shadow:inset 0 -18px 34px #0c122214,0 18px 34px #0c122214}.ball-return__stage--baseline{box-shadow:inset 0 0 0 4px #2d9d780f}.ball-return__stage--speed{box-shadow:inset 0 0 0 4px #c4a0351f}.ball-return__stage--accuracy,.ball-return__stage--combined{box-shadow:inset 0 0 0 4px #0d4f5c1f}.ball-return__room{position:absolute;display:flex;align-items:flex-start;justify-content:flex-start;width:50%;height:50%;padding:.55rem;color:#0c122285;font-size:.78rem;font-weight:800;border:1px solid rgba(12,18,34,.06)}.ball-return__stage--isometric .ball-return__room{box-shadow:inset -10px -12px 18px #0c12220d}.ball-return__room--living{left:0;top:0;background:#eef8f4}.ball-return__room--kitchen{left:50%;top:0;background:#fff7dd}.ball-return__room--bedroom{left:0;top:50%;background:#eef3ff}.ball-return__room--playroom{left:50%;top:50%;background:#fff0ee}.ball-return__wall{position:absolute;z-index:1;background:#8b6f57;box-shadow:0 0 0 2px #ffffff85,0 8px 14px #3f2a1938;pointer-events:none}.ball-return__stage--isometric .ball-return__wall{background:linear-gradient(90deg,rgba(255,255,255,.22),transparent),#8b6f57}.ball-return__wall--vertical{left:calc(50% - 4px);top:0;width:8px;height:100%}.ball-return__wall--horizontal{left:0;top:calc(50% - 4px);width:100%;height:8px}.ball-return__door{position:absolute;z-index:2;border-radius:999px;border:2px solid rgba(12,18,34,.16);background:#f7f5f2;box-shadow:0 5px 12px #0c12221f;pointer-events:none;transition:background .18s ease,box-shadow .18s ease,transform .18s ease}.ball-return__door--open{border-color:#2d9d7880;background:#2d9d7833;box-shadow:0 0 0 4px #2d9d781a,0 5px 12px #0c12221a}.ball-return__door--closed{border-color:#b91c1c73;background:repeating-linear-gradient(45deg,#b91c1c33 0 7px,#fff9 7px 14px),#fee2e2;box-shadow:0 0 0 4px #b91c1c1a,0 8px 16px #7f1d1d29}.ball-return__door--top,.ball-return__door--bottom{left:calc(50% - .95rem);width:1.9rem;height:4.1rem}.ball-return__door--top{top:calc(25% - 2.05rem)}.ball-return__door--bottom{top:calc(75% - 2.05rem)}.ball-return__door--left,.ball-return__door--right{top:calc(50% - .95rem);width:4.1rem;height:1.9rem}.ball-return__door--left{left:calc(25% - 2.05rem)}.ball-return__door--right{left:calc(75% - 2.05rem)}.ball-return__object{position:absolute;z-index:3;transform:translate(-50%,-50%);min-width:3.2rem;padding:.3rem .42rem;border:2px solid rgba(12,18,34,.12);border-radius:14px;background:#ffffffeb;color:var(--text-dark, #0c1222);font-size:.72rem;font-weight:800;text-align:center;box-shadow:0 8px 18px #0c122214}.ball-return__stage--isometric .ball-return__object{box-shadow:0 14px #0c122214,0 18px 24px #0c12221f}.ball-return__object--moved{border-color:#0d4f5c33}.ball-return__object--hit{border-color:#c4a035;animation:ball-return-wobble .42s ease-in-out 2}.ball-return__kid{position:absolute;z-index:4;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:.08rem;min-width:4.2rem;pointer-events:none;will-change:left,top,transform}.ball-return__stage--isometric .ball-return__kid:after{content:"";width:2.8rem;height:.6rem;border-radius:999px;background:#0c122224;transform:translateY(-.25rem)}.ball-return__kid--receiver{animation:ball-return-idle 1.6s ease-in-out infinite}.ball-return__kid--thrower{animation:ball-return-idle 1.9s ease-in-out infinite}.ball-return__kid--chaser .ball-return__body{box-shadow:0 0 0 3px #f973162e,0 8px 16px #f973162e}.ball-return__kid--chaser:before{content:"";position:absolute;top:1.2rem;width:3.8rem;height:3.8rem;border:2px solid rgba(249,115,22,.26);border-radius:999px;transform:translateY(-50%)}.ball-return__head{position:relative;z-index:1;width:2.1rem;height:2.1rem;border:2px solid rgba(12,18,34,.16);border-radius:999px;background:#ffd7b5}.ball-return__body{position:relative;z-index:1;border-radius:999px;background:var(--primary, #0d4f5c);color:#fff;font-size:.72rem;font-weight:800;padding:.22rem .52rem}.ball-return__kid--thrower .ball-return__body{background:var(--accent, #2d9d78)}.ball-return__target{position:absolute;z-index:3;transform:translate(-50%,-50%);border:2px dashed rgba(13,79,92,.45);border-radius:999px;background:#2d9d781f;box-shadow:0 0 0 6px #2d9d780f;pointer-events:none}.ball-return__ball{position:absolute;z-index:6;left:var(--from-x);top:var(--from-y);transform:translate(-50%,-50%);width:1.3rem;height:1.3rem;border:2px solid rgba(12,18,34,.16);border-radius:999px;background:radial-gradient(circle at 35% 30%,#fff 0 14%,transparent 15%),#f97316;box-shadow:0 8px 18px #0c122233}.ball-return__stage--isometric .ball-return__ball{box-shadow:0 10px #0c12221f,0 16px 22px #0c122238}.ball-return__ball--fly{animation:ball-return-flight var(--flight-ms) cubic-bezier(.2,.75,.2,1) forwards}.ball-return__ball--bounce{animation-timing-function:cubic-bezier(.18,.78,.25,1.18)}.ball-return__aim{position:absolute;inset:0;z-index:5;pointer-events:none}.ball-return__aim line{stroke:#0d4f5cb8;stroke-width:1.4;stroke-linecap:round;stroke-dasharray:2.4 1.4}.ball-return__paths{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}.ball-return__result{position:absolute;z-index:8;inset-inline-start:50%;bottom:.75rem;transform:translate(var(--ball-return-result-offset, -50%));width:min(92%,28rem);border-radius:999px;padding:.55rem .9rem;font-size:.95rem;font-weight:800;text-align:center;box-shadow:0 12px 26px #0c122229}[dir=rtl] .ball-return__result{--ball-return-result-offset: 50%}.ball-return__result--success{background:#ecfdf3;color:#067647}.ball-return__result--miss{background:#fff7dd;color:#8a5b00}.ball-return__mom{position:absolute;z-index:9;inset-inline-end:1rem;bottom:3.55rem;display:grid;justify-items:center;gap:.08rem;animation:ball-return-pop-in .22s ease-out,ball-return-mom-dance .78s ease-in-out .22s 2}.ball-return__mom-head{width:2rem;height:2rem;border:2px solid rgba(12,18,34,.16);border-radius:999px;background:#ffd7b5;box-shadow:inset 0 -.45rem #8b5cf66b}.ball-return__mom-body{border-radius:999px;background:#7c3aed;color:#fff;font-size:.7rem;font-weight:800;padding:.2rem .5rem}.ball-return__speech{position:absolute;inset-inline-end:2.8rem;bottom:1.7rem;min-width:10rem;border:2px solid rgba(12,18,34,.12);border-radius:999px 999px .2rem;background:#fff;color:#7c2d12;font-size:.78rem;font-weight:900;padding:.42rem .65rem;box-shadow:0 10px 22px #0c122224}.ball-return__note{margin:.55rem 0 0;color:var(--text-light, #5c6578);font-size:.78rem;text-align:center}@keyframes ball-return-idle{0%,to{transform:translate(-50%,-50%)}50%{transform:translate(-50%,calc(-50% - 3px))}}@keyframes ball-return-flight{0%{left:var(--from-x);top:var(--from-y);transform:translate(-50%,-50%) scale(1)}50%{left:var(--via-x);top:var(--via-y);transform:translate(-50%,-80%) scale(1.08)}to{left:var(--to-x);top:var(--to-y);transform:translate(-50%,-50%) scale(.96)}}@keyframes ball-return-wobble{0%,to{transform:translate(-50%,-50%) rotate(0)}25%{transform:translate(-50%,-50%) rotate(-5deg)}75%{transform:translate(-50%,-50%) rotate(5deg)}}@keyframes ball-return-pop-in{0%{opacity:0;transform:translateY(12px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ball-return-mom-dance{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-4px) rotate(-4deg)}75%{transform:translateY(-4px) rotate(4deg)}}@media(prefers-reduced-motion:reduce){.ball-return__kid,.ball-return__ball--fly,.ball-return__object--hit,.ball-return__mom{animation:none}}@media(max-width:640px){.ball-return__stage{min-height:300px}.ball-return__object{min-width:3rem;font-size:.68rem;padding:.28rem .4rem}}.patient-dashboard{padding:2rem;max-width:1200px;margin:0 auto}.patient-dashboard .btn,.patient-dashboard .logout-btn,.patient-dashboard .focus-toggle,.patient-dashboard .focus-link{min-height:44px}.patient-dashboard .btn,.patient-dashboard .logout-btn,.patient-dashboard .focus-toggle,.patient-dashboard .focus-link{min-width:44px}.patient-dashboard .btn:focus-visible,.patient-dashboard .logout-btn:focus-visible,.patient-dashboard .focus-toggle:focus-visible,.patient-dashboard .focus-link:focus-visible{outline:3px solid #1d70b8;outline-offset:2px}.dashboard-header{margin-bottom:3rem}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.header-content{display:flex;flex-direction:column;align-items:center;flex:1;text-align:center}.greeting-section{margin-bottom:1.5rem}.greeting-subtitle{color:var(--text-medium);font-size:1rem;margin:0}.section-title{color:var(--text-dark);font-size:1.5rem;margin-top:1rem;font-weight:500}.dashboard-header h1{color:var(--text-dark);font-size:2rem;margin-top:1rem}.logout-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--white);border:2px solid var(--primary-blue);border-radius:8px;color:var(--primary-blue);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.logout-btn:hover{background:var(--primary-blue);color:var(--white);transform:translateY(-2px);box-shadow:var(--shadow-md)}.logout-btn:active{transform:translateY(0)}.logout-icon{font-size:1.2rem}.logout-text{font-weight:500}@media(max-width:768px){.header-top{flex-direction:column;gap:1rem}.logout-btn{width:100%;justify-content:center}}.progress-section{background:var(--white);padding:2rem;border-radius:12px;box-shadow:var(--shadow-sm)}.mission-hub{background:linear-gradient(140deg,#eef9f7,#fdf8ea);border:1px solid rgba(13,79,92,.14);border-radius:16px;padding:1.5rem;box-shadow:var(--shadow-sm)}.mission-hub-header h2{margin:0;color:var(--text-dark);font-size:1.4rem}.mission-hub-header p{margin:.4rem 0 0;color:var(--text-light);font-size:.98rem}.mission-hub-header .mission-success{margin-top:.65rem;color:#155d45;background:#2d9d7829;border:1px solid rgba(45,157,120,.35);border-radius:10px;padding:.45rem .7rem;display:inline-block;font-size:.93rem}.mission-hub-grid{margin-top:1.2rem;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:1rem}.today-mission-card,.quest-track-card{background:var(--white);border-radius:14px;border:1px solid var(--medium-gray);padding:1rem}.today-mission-label{margin:0 0 .5rem;display:inline-flex;align-items:center;gap:.35rem;font-weight:600;color:var(--primary-blue)}.today-mission-card h3,.quest-track-card h3{margin:0;color:var(--text-dark)}.today-mission-meta{margin:.35rem 0 0;color:var(--text-light);font-size:.9rem}.today-mission-description{margin:.7rem 0 1rem;color:var(--text-dark);font-size:.95rem}.quest-chip-list{margin-top:.8rem;display:grid;gap:.55rem}.quest-chip{border-radius:10px;border:1px solid transparent;padding:.55rem .7rem;display:flex;justify-content:space-between;align-items:center;gap:.75rem}.quest-chip.now{background:#0d4f5c1f;border-color:#0d4f5c33}.quest-chip.next{background:#c4a03529;border-color:#c4a0354d}.quest-chip.done{background:#2d9d7829;border-color:#2d9d784d}.quest-chip-label{font-size:.84rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--text-dark)}[dir=rtl] .quest-chip-label{letter-spacing:0;text-transform:none}.quest-chip-value{font-size:.92rem;color:var(--text-dark)}.quest-track-note{margin:.8rem 0 0;color:var(--text-light);font-size:.92rem}.focus-mode{background:var(--white);border:1px solid var(--medium-gray);border-radius:16px;padding:1.25rem;box-shadow:var(--shadow-sm)}.focus-mode-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.focus-mode-header h2{margin:0;font-size:1.35rem}.focus-mode-controls{display:flex;gap:.5rem}.focus-toggle{border:1px solid var(--primary-blue);background:var(--white);color:var(--primary-blue);border-radius:10px;padding:.45rem .75rem;font-weight:600;cursor:pointer}.focus-toggle.active,.focus-toggle:hover{background:#0d4f5c1a}.focus-audio-hint{margin:.65rem 0 0;color:var(--text-light);font-size:.9rem}.focus-card{margin-top:.95rem;border:1px solid rgba(13,79,92,.18);background:linear-gradient(180deg,#fff,#f7fcfb);border-radius:14px;padding:1rem}.focus-card-top{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.focus-estimate{margin:0;font-size:.9rem;color:var(--text-light)}.focus-card h3{margin:.7rem 0 0;font-size:1.35rem}.focus-why{margin:.65rem 0 0;color:var(--text-dark)}.focus-description,.focus-due{margin:.45rem 0 0;color:var(--text-light)}.focus-actions{margin-top:.95rem}.focus-link{margin-top:.35rem;border:0;background:transparent;color:var(--primary-blue);font-weight:700;padding:.2rem .1rem;cursor:pointer;text-align:start}.focus-link:hover{text-decoration:underline}.tasks-section h2{color:var(--text-dark);margin-bottom:1.5rem;font-size:1.5rem}.tasks-section .loading-state,.tasks-section .empty-state{text-align:center;padding:2rem;color:var(--text-light)}.task-groups{display:flex;flex-direction:column;gap:1.5rem}.task-group-title{font-size:1.1rem;color:var(--text-medium);margin:0 0 .75rem}.task-card .task-description{margin-top:.5rem;color:var(--text-light);font-size:.9rem;font-style:italic}.task-urgent{margin:0;color:#8f1d24;background:#fdecef;border:1px solid #f6c8cf;border-radius:8px;display:inline-flex;align-items:center;gap:.35rem;font-size:.82rem;font-weight:700;padding:.2rem .5rem}.task-card{background:var(--white);padding:1.5rem;border-radius:12px;box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;align-items:center;transition:transform .2s ease,box-shadow .2s ease}.task-card:hover:not(.completed){transform:translateY(-2px);box-shadow:var(--shadow-md)}.task-card.completed{opacity:.7;background:var(--light-gray)}.task-content{display:flex;align-items:center;gap:1rem;flex:1}.task-meta{display:flex;flex-direction:column;gap:.3rem}.task-due{margin:0;font-size:.9rem;color:var(--text-medium);font-weight:600}.task-due.overdue{color:#b4232c}.task-due.today{color:var(--primary-blue)}.task-estimate{margin:0;font-size:.88rem;color:var(--text-medium);font-weight:600}.task-card.overdue{border:2px solid #f0a7ad}.parent-helper{margin:0 0 1rem}.parent-helper-title{margin:0;font-size:1rem;font-weight:700;color:var(--text-dark);line-height:1.4}.parent-helper p{margin:.5rem 0 0;color:var(--text-medium)}.patient-dashboard.t1 .task-card{padding:1.75rem}.patient-dashboard.t1 .task-content h3{font-size:1.2rem}.patient-dashboard.t3 .task-card{padding:1rem 1.25rem}.patient-dashboard.t3 .task-content h3{font-size:1rem}.task-content h3{color:var(--text-dark);font-size:1.1rem;margin:0;line-height:1.35}.onboarding-step-content{text-align:start;color:var(--text-dark)}.onboarding-step-content ul{list-style:none;padding-inline-start:0;margin-top:1rem}.onboarding-step-content li{padding:.5rem 0;padding-inline-start:1.5rem;position:relative}.onboarding-step-content li:before{content:"✓";position:absolute;inset-inline-start:0;color:var(--secondary-green);font-weight:700}@media(prefers-reduced-motion:reduce){.task-card{transition:none}.task-card:hover:not(.completed){transform:none}}@media(max-width:768px){.patient-dashboard{padding:1rem}.mission-hub-grid{grid-template-columns:1fr}.focus-mode-controls{width:100%}.focus-toggle{flex:1}.task-card{flex-direction:column;align-items:flex-start;gap:1rem}}.clinician-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header{margin-bottom:2rem}.greeting-section{margin-bottom:1rem}.greeting{color:var(--text-dark);font-size:2rem;font-weight:600;margin:0 0 .5rem}.dashboard-header h1{color:var(--text-dark);font-size:2rem;margin-bottom:.5rem}.dashboard-subtitle{color:var(--text-light);font-size:1rem}.dashboard-content{display:flex;flex-direction:column;gap:2rem}.patients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.patient-card{background:var(--white);padding:1.5rem;border-radius:8px;box-shadow:var(--shadow-sm);border:1px solid var(--medium-gray);transition:border-color .2s ease}.patient-card:hover{border-color:var(--primary-blue)}.patient-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.patient-header h3{color:var(--text-dark);font-size:1.2rem;margin:0}.patient-info{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.info-item{display:flex;justify-content:space-between;align-items:center}.info-label{color:var(--text-light);font-size:.9rem}.info-value{color:var(--text-dark);font-size:.9rem;font-weight:500}.patient-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:1px solid var(--medium-gray);flex-wrap:wrap}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.clinician-dashboard .btn-primary{background:var(--primary-color);color:var(--white)}.clinician-dashboard .btn-primary:hover{background:var(--primary-dark)}.clinician-dashboard .btn-secondary{background:var(--surface-elevated);color:var(--primary-color);border:2px solid var(--primary-color)}.clinician-dashboard .btn-secondary:hover{background:#0d4f5c14}.clinician-dashboard .btn:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.15);box-shadow:none}.inline-action-with-reason{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.2rem}.inline-disabled-reason{font-size:.72rem;color:var(--text-light);line-height:1.2;max-width:220px}.loading-state,.error-state,.empty-state{text-align:center;padding:3rem;color:var(--text-light)}.error-state{color:var(--error)}.modal-overlay{position:fixed;top:0;inset-inline-start:0;inset-inline-end:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:2000}.modal-content{background:var(--white);border-radius:8px;padding:0;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal-content-large{max-width:800px}.modal-content.modal-content-compare{position:relative;width:min(92vw,1400px);max-width:96vw;min-width:280px;max-height:90vh;min-height:12rem;overflow:auto;box-sizing:border-box;resize:none}.compare-modal-resize-handle{position:absolute;inset-inline-end:0;bottom:0;width:2.75rem;height:2.75rem;min-width:44px;min-height:44px;touch-action:none;cursor:nwse-resize;box-sizing:border-box;z-index:2;background:linear-gradient(135deg,transparent 55%,rgba(0,0,0,.07) 55%);border-end-end-radius:8px}.compare-modal-resize-handle:focus-visible{outline:2px solid var(--primary-color);outline-offset:-2px}.compare-patients-table-wrap{position:relative;overflow-x:auto;margin-top:.25rem;-webkit-overflow-scrolling:touch}.compare-patients-table{width:100%;min-width:36rem;border-collapse:collapse;table-layout:fixed;font-size:.9rem}.compare-patients-table th,.compare-patients-table td{border:1px solid var(--medium-gray);padding:.65rem .85rem;vertical-align:top;text-align:start;word-wrap:break-word}.compare-patients-table thead th{background:var(--light-gray);font-weight:600;color:var(--text-dark)}.compare-patients-table tbody th[scope=row]{background:#00000005;font-weight:600;font-size:.82rem;color:var(--text-light);width:9.5rem}.compare-patients-metric-col{width:9.5rem}.compare-patients-caption-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.compare-patients-task-list{margin:0;padding-inline-start:1.15rem;font-size:.86rem}.compare-patients-task-list li{margin-bottom:.35rem}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--medium-gray)}.modal-header h2{margin:0;color:var(--text-dark);font-size:1.5rem}.modal-close{background:none;border:none;font-size:2rem;color:var(--text-light);cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;line-height:1}.modal-close:hover{color:var(--text-dark)}.modal-body{padding:1.5rem}.patient-detail-section{margin-bottom:1.5rem}.patient-detail-section h3{color:var(--text-dark);font-size:1.1rem;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--medium-gray)}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--light-gray)}.detail-item:last-child{border-bottom:none}.detail-label{color:var(--text-light);font-size:.9rem;font-weight:500}.detail-value{color:var(--text-dark);font-size:.9rem}.modal-footer{padding:1.5rem;border-top:1px solid var(--medium-gray);display:flex;justify-content:flex-end}.tasks-section{margin-top:1rem}.tasks-summary{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--medium-gray)}.tasks-summary h3{margin:0 0 .5rem;color:var(--text-dark);font-size:1.2rem}.tasks-summary p{margin:0;color:var(--text-light);font-size:.95rem}.tasks-list{display:flex;flex-direction:column;gap:1rem}.task-item{padding:1rem;border:1px solid var(--medium-gray);border-radius:8px;background:var(--white);transition:border-color .2s ease}.task-item:hover{border-color:var(--primary-blue)}.task-item.completed{background:var(--light-gray);opacity:.8}.task-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.task-header h4{margin:0;color:var(--text-dark);font-size:1rem;font-weight:600}.task-description{margin:.5rem 0;color:var(--text-light);font-size:.9rem;line-height:1.5}.task-meta{display:flex;gap:1rem;margin-top:.5rem;font-size:.85rem;color:var(--text-light)}.task-due-date,.task-completed-date,.task-assignment-date{display:inline-block;font-size:.85rem;color:var(--text-light)}.btn-danger{background-color:#dc3545;color:#fff;border:none}.btn-danger:hover{background-color:#c82333}.add-task-form{animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.reports-panel{max-width:900px;margin:0 auto}.reports-builder-header{margin-bottom:1rem}.reports-builder-title{margin:0 0 .35rem;font-size:1.35rem;color:var(--text-dark)}.reports-builder-scope{margin:0;font-size:.95rem;color:var(--text-light)}.reports-demo-banner{padding:.85rem 1rem;margin-bottom:1.25rem;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;color:#78350f;font-size:.9rem;line-height:1.45}.reports-harmonized-overview{margin-bottom:1.35rem;padding:1.15rem 1.35rem 1.25rem;border-radius:12px;border:1px solid #93c5fd;background:linear-gradient(145deg,#eff6ff,#fff 55%);box-shadow:0 2px 8px #2563eb12}.reports-harmonized-overview-title{margin:0 0 .5rem;font-size:1.15rem;font-weight:600;color:#1e3a8a;letter-spacing:-.02em}[dir=rtl] .reports-harmonized-overview-title{letter-spacing:0}.reports-harmonized-overview-lede{margin:0 0 .85rem;font-size:.88rem;line-height:1.5;color:#334155;max-width:52rem}.reports-harmonized-overview-lede strong{font-weight:600;color:#0f172a}.reports-harmonized-overview-meta{margin-bottom:.85rem;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.reports-harmonized-chart .reports-trend-chart-caption{color:#475569}.reports-game-clusters{display:flex;flex-direction:column;gap:2rem;margin-bottom:2rem}.reports-game-cluster{border-radius:12px;border:1px solid var(--medium-gray);background:linear-gradient(165deg,#f8fafc 0%,var(--white) 38%,var(--white) 100%);box-shadow:var(--shadow-sm);overflow:hidden}.reports-game-cluster__header{padding:1.1rem 1.35rem 1rem;border-bottom:1px solid rgba(15,23,42,.08);background:#ffffffa6}.reports-game-cluster__title{margin:0;font-size:1.2rem;font-weight:600;color:var(--text-dark);letter-spacing:-.02em;line-height:1.25}[dir=rtl] .reports-game-cluster__title{letter-spacing:0}.reports-game-cluster__kicker{margin:.45rem 0 0;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:var(--text-light);font-weight:700}[dir=rtl] .reports-game-cluster__kicker{letter-spacing:0;text-transform:none}.reports-game-cluster__lede{margin:.5rem 0 0;font-size:.86rem;line-height:1.4;color:var(--text-light);max-width:42rem}.reports-game-cluster__trend{padding:1rem 1.35rem 1.15rem;background:var(--white);border-bottom:1px solid rgba(15,23,42,.06)}.reports-game-cluster__missions{padding:1.15rem 1.35rem 1.35rem;display:flex;flex-direction:column;gap:1rem;background:#fafbfc}.reports-mission-list{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2rem}.reports-mission-card{background:var(--white);border:1px solid var(--medium-gray);border-radius:8px;border-inline-start:4px solid var(--primary-color);padding:1.15rem 1.25rem;box-shadow:var(--shadow-sm)}.reports-mission-card-title{margin:0 0 .5rem;font-size:1.1rem;color:var(--text-dark)}.reports-mission-card-meta{margin:0 0 1rem;font-size:.88rem;color:var(--text-light)}.reports-mission-status--done{color:var(--success-color, #15803d)}.reports-mission-status--open{color:var(--warning-color, #b45309)}.reports-tic-table{width:100%;border-collapse:collapse;font-size:.9rem}.reports-tic-caption{caption-side:top;text-align:start;font-weight:600;color:var(--text-dark);padding:0 0 .5rem}.reports-tic-table th,.reports-tic-table td{border:1px solid var(--medium-gray);padding:.5rem .75rem;text-align:start}.reports-tic-table thead th{background:var(--light-gray);font-weight:600;text-transform:capitalize}[dir=rtl] .reports-tic-table thead th{text-transform:none}.reports-tic-total-row th,.reports-tic-total-row td{font-weight:700;background:#00000005}.reports-export-stub{padding:1.25rem;border:1px dashed var(--medium-gray);border-radius:8px;background:var(--light-gray)}.reports-export-stub h3{margin:0 0 .5rem;font-size:1.05rem;color:var(--text-dark)}.reports-export-stub-note{margin:0 0 1rem;font-size:.88rem;color:var(--text-light)}.reports-export-controls{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.reports-export-label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:600;color:var(--text-dark)}.reports-export-select{min-width:160px;padding:.45rem .5rem;border-radius:6px;border:1px solid var(--medium-gray);font-size:.9rem;background:var(--white)}.reports-stub-feedback{margin:1rem 0 0;font-size:.88rem;color:var(--text-dark)}.reports-trend-chart-wrap{margin:0;padding:0}.reports-trend-chart-caption{margin:0 0 .5rem;font-size:.88rem;color:var(--text-light)}.reports-trend-hint{margin:0;font-size:.9rem;color:var(--text-light)}@media(max-width:768px){.clinician-dashboard{padding:1rem}.patients-grid{grid-template-columns:1fr}.modal-content{width:95%;max-height:95vh}}.manager-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #eee}.tab{padding:1rem 2rem;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1rem;color:#666;transition:all .2s}.tab:hover{color:#2196f3}.tab.active{color:#2196f3;border-bottom-color:#2196f3;font-weight:600}.table-container{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.data-table{width:100%;border-collapse:collapse}.data-table thead{background-color:#f5f5f5}.data-table th{padding:1rem;text-align:start;font-weight:600;color:#333;border-bottom:2px solid #ddd}.data-table td{padding:1rem;border-bottom:1px solid #eee}.data-table tr:hover{background-color:#f9f9f9}.btn-success{background-color:#4caf50;color:#fff}.btn-success:hover{background-color:#45a049}.btn-warning{background-color:#ff9800;color:#fff}.btn-warning:hover{background-color:#e68900}.btn-danger:hover{background-color:#da190b}.action-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:2rem;border-radius:8px;max-width:500px;width:90%;max-height:80vh;overflow-y:auto}.modal-content h3{margin-top:0;margin-bottom:1rem}.therapist-list{margin:1.5rem 0;max-height:400px;overflow-y:auto}.therapist-option{width:100%;padding:1rem;margin-bottom:.5rem;background:#f9f9f9;border:2px solid transparent;border-radius:4px;cursor:pointer;text-align:start;transition:all .2s}.therapist-option:hover{background:#f0f0f0;border-color:#2196f3}.therapist-option.selected{background:#e3f2fd;border-color:#2196f3}.therapist-details{display:flex;gap:1rem;margin-top:.5rem;font-size:.9rem;color:#666}[dir=rtl] .manager-dashboard{text-align:start}[dir=rtl] .manager-dashboard .dashboard-header,[dir=rtl] .manager-dashboard .error-banner,[dir=rtl] .manager-dashboard .action-buttons,[dir=rtl] .manager-dashboard .therapist-details{direction:rtl}[dir=rtl] .manager-dashboard .modal-content{text-align:start}[dir=rtl] .manager-dashboard input[type=email],[dir=rtl] .manager-dashboard input[type=password],[dir=rtl] .manager-dashboard input[type=date]{direction:ltr;text-align:left}@media(max-width:768px){.manager-dashboard{padding:1rem}.data-table{font-size:.9rem}.data-table th,.data-table td{padding:.5rem}.tabs{flex-direction:column}}.admin-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.dashboard-header h1{margin:0;font-size:2rem;color:#333}.dashboard-subtitle{margin:.5rem 0 0;color:#666;font-size:.9rem}.error-banner{background-color:#fee;color:#c33;padding:1rem;border-radius:4px;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.error-banner button{background:none;border:none;color:#c33;font-size:1.5rem;cursor:pointer;padding:0 .5rem}.admin-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:1rem}.filter-controls label{display:flex;align-items:center;gap:.5rem}.filter-controls select{padding:.5rem;border:1px solid #ddd;border-radius:4px}.add-user-form{background:#f9f9f9;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.add-user-form h3{margin-top:0;margin-bottom:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem;font-weight:500;color:#333}.form-group input,.form-group select{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.users-table-container{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.users-table{width:100%;border-collapse:collapse}.users-table thead{background-color:#f5f5f5}.users-table th{padding:1rem;text-align:start;font-weight:600;color:#333;border-bottom:2px solid #ddd}.users-table td{padding:1rem;border-bottom:1px solid #eee}.users-table tr:hover{background-color:#f9f9f9}.role-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;color:#fff;font-size:.85rem;font-weight:500;text-transform:capitalize}[dir=rtl] .role-badge{text-transform:none}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.status-badge.active{background-color:#4caf50;color:#fff}.status-badge.inactive{background-color:#999;color:#fff}.action-buttons{display:flex;gap:.5rem}.btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-primary{background-color:#2196f3;color:#fff}.btn-primary:hover{background-color:#1976d2}.btn-outline{background-color:#fff;color:#2196f3;border:1px solid #2196F3}.btn-outline:hover{background-color:#f5f5f5}.btn-danger{background-color:#f44336;color:#fff}.btn-danger:hover{background-color:#d32f2f}.btn-sm{padding:.25rem .75rem;font-size:.85rem}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5a6268}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover{background-color:#218838}.btn-warning{background-color:#ffc107;color:#212529}.btn-warning:hover{background-color:#e0a800}.loading{text-align:center;padding:2rem;color:#666}.no-data{text-align:center;padding:2rem;color:#999}.modal-overlay{position:fixed;top:0;inset-inline-start:0;inset-inline-end:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;padding:2rem;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 6px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;border-bottom:1px solid #eee;padding-bottom:1rem}.modal-header h2{margin:0;font-size:1.5rem}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:#333}.modal-body{margin-bottom:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.5rem;border-top:1px solid #eee;padding-top:1rem}@media(max-width:768px){.admin-dashboard{padding:1rem}.form-row{grid-template-columns:1fr}.admin-controls{flex-direction:column;align-items:stretch}.users-table{font-size:.9rem}.users-table th,.users-table td{padding:.5rem}}.dashboard-shell{width:100%;max-width:1200px;margin:0 auto;padding:0 clamp(1rem,3vw,1.5rem) 2.5rem;flex:1}.dashboard-section{background:var(--white);padding:clamp(1.25rem,3vw,2rem);border-radius:var(--radius-md, 14px);box-shadow:var(--shadow-sm);border:1px solid var(--border, rgba(12, 18, 34, .08));margin-top:1.5rem}.dashboard-section h2{color:var(--primary-color);margin-bottom:1.25rem;font-size:1.2rem;font-weight:700}.users-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.user-card{background:var(--bg-light);padding:1.5rem;border-radius:var(--radius-sm, 8px);border:1px solid var(--border, rgba(12, 18, 34, .08))}.user-card h3{color:var(--text-dark);margin-bottom:.5rem}.user-card p{color:var(--text-light);margin-bottom:.5rem}.status{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.875rem;font-weight:600}.status.active{background:var(--success);color:var(--white)}.status.inactive{background:var(--text-light);color:var(--white)}.therapist-patient-file{max-width:960px;margin:0 auto;padding:1.5rem 1.25rem 3rem}.patient-file-back{display:inline-block;margin-bottom:1.25rem;color:var(--primary-color, #0066cc);text-decoration:none;font-size:.95rem}.patient-file-back:hover{text-decoration:underline}.patient-file-banner{background:#fff3cd;border:1px solid #ffc107;color:#856404;padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem}.patient-file-header{margin-bottom:1.75rem}.patient-file-kicker{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-light, #666);margin-bottom:.25rem}[dir=rtl] .patient-file-kicker{letter-spacing:0;text-transform:none}.patient-file-title{margin:0 0 .5rem;font-size:1.75rem}.patient-file-disclaimer{margin:0;font-size:.88rem;color:var(--text-light, #666)}.patient-file-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:2rem}.patient-file-card{border:1px solid var(--medium-gray, #ddd);border-radius:8px;padding:1rem 1.1rem;background:var(--white, #fff)}.patient-file-card h2{margin:0 0 .5rem;font-size:1rem}.patient-file-card p{margin:0 0 .85rem;font-size:.88rem;color:var(--text-light, #555);line-height:1.45}.btn-outline{padding:.45rem .9rem;border-radius:6px;border:2px solid var(--primary-color, #0066cc);background:transparent;color:var(--primary-color, #0066cc);font-size:.9rem;cursor:pointer}.btn-outline:hover{background:#0066cc0f}.patient-file-notes h2,.patient-file-history h2{margin:0 0 .5rem;font-size:1.15rem}.patient-file-notes-intro,.patient-file-muted{font-size:.9rem;color:var(--text-light, #555);margin:0 0 1rem}.patient-file-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:2.5rem}.patient-file-label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;font-weight:600}.patient-file-input,.patient-file-textarea{font:inherit;padding:.5rem .65rem;border-radius:6px;border:1px solid var(--medium-gray, #ccc)}.patient-file-form-actions{display:flex;gap:.75rem;flex-wrap:wrap}.btn-primary-solid{padding:.55rem 1.1rem;border:none;border-radius:6px;background:var(--primary-color, #0066cc);color:#fff;font-size:.95rem;cursor:pointer}.btn-primary-solid:disabled{opacity:.65;cursor:not-allowed}.patient-file-history-list{list-style:none;margin:0;padding:0}.patient-file-history-item{border:1px solid var(--medium-gray, #ddd);border-radius:8px;padding:1rem;margin-bottom:.75rem;background:var(--white, #fff)}.patient-file-history-meta{font-size:.88rem;margin-bottom:.35rem}.patient-file-history-body{margin:0 0 .65rem;white-space:pre-wrap;font-size:.92rem}.patient-file-history-actions{display:flex;gap:1rem}.link-btn{background:none;border:none;padding:0;color:var(--primary-color, #0066cc);cursor:pointer;font-size:.88rem;text-decoration:underline}.link-btn.danger{color:#c62828}.navbar{background:#ffffffdb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1000;padding:.65rem 0}.navbar-inner.container{display:flex;justify-content:space-between;align-items:center;gap:1rem;max-width:1160px;margin:0 auto;padding:0 clamp(1rem,4vw,1.5rem)}.nav-brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:var(--ink);transition:opacity .2s ease}.nav-brand:hover{opacity:.88}.nav-brand-logo{height:40px;width:auto;max-width:min(176px,46vw);object-fit:contain;object-position:start center;flex-shrink:0;display:block;filter:drop-shadow(0 1px 2px rgba(13,79,92,.06))}.nav-brand-text{display:flex;flex-direction:column;line-height:1.15;min-width:0}.logo-tagline{font-size:.65rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}[dir=rtl] .nav-brand-logo{object-position:right center}[dir=rtl] .logo-tagline{letter-spacing:0;text-transform:none}.nav-links{display:flex;gap:1.5rem;flex-wrap:wrap}.nav-links a{text-decoration:none;color:var(--ink-muted);font-weight:600;font-size:.88rem;transition:color .2s ease}.nav-links a:hover{color:var(--primary)}.nav-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.language-switcher{display:inline-flex;align-items:center;gap:.4rem;color:var(--ink-muted);font-size:.82rem;font-weight:600}.language-switcher select{min-height:2.35rem;border:1px solid rgba(13,79,92,.25);border-radius:var(--radius-sm);background:var(--surface-elevated);color:var(--ink);font:inherit;padding:.42rem .6rem;cursor:pointer}.language-switcher select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0d4f5c1f}.btn{font-family:var(--font-sans);border-radius:var(--radius-sm);font-size:.84rem;font-weight:600;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;padding:.52rem .95rem;border:none;transition:background .2s,color .2s,border-color .2s}.btn-nav-outline{background:transparent;color:var(--primary);border:1px solid rgba(13,79,92,.35)}.btn-nav-outline:hover{border-color:var(--primary);background:#0d4f5c0f}.btn-nav-primary{background:var(--primary);color:#fff;border:1px solid var(--primary)}.btn-nav-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}@media(max-width:860px){.navbar-inner.container{flex-wrap:wrap}.nav-links{order:3;width:100%;justify-content:center;padding-top:.35rem;border-top:1px solid var(--border)}}.footer{background:linear-gradient(180deg,#0a2830,#061a20);color:#ffffffe0;padding:2.75rem 0 1.25rem;margin-top:auto;border-top:1px solid rgba(255,255,255,.06)}.footer-inner{max-width:1160px}.footer-content{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:2rem;margin-bottom:2rem}.footer-brand-block .footer-tagline{max-width:22rem;line-height:1.55}.footer-section h4{margin-bottom:.85rem;color:#b8ebd9;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}[dir=rtl] .footer-section h4{letter-spacing:0;text-transform:none}.footer-section p{color:#ffffff8c;font-size:.9rem}.footer-section a{display:block;color:#ffffff8c;text-decoration:none;margin-bottom:.45rem;font-size:.9rem;transition:color .2s ease}.footer-section a:hover{color:#fff}.footer-bottom{text-align:center;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.08);color:#ffffff61;font-size:.82rem}@media(max-width:768px){.footer-content{grid-template-columns:1fr 1fr}}@media(max-width:500px){.footer-content{grid-template-columns:1fr}}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:2rem;max-width:1200px;margin:0 auto;width:100%}@media(max-width:768px){.main-content{padding:1rem}}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--font-latin: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-arabic: "Noto Sans Arabic", "Segoe UI", Tahoma, sans-serif;--font-hebrew: "Noto Sans Hebrew", "Segoe UI", Arial, sans-serif;--font-sans: var(--font-latin);--font-display: "Fraunces", Georgia, "Times New Roman", serif;--ink: #0c1222;--ink-muted: #5c6578;--surface: #f7f5f2;--surface-elevated: #ffffff;--border: rgba(12, 18, 34, .08);--primary: #0d4f5c;--primary-hover: #0a3f49;--accent: #2d9d78;--accent-soft: rgba(45, 157, 120, .12);--highlight: #c4a035;--white: #ffffff;--text-dark: var(--ink);--text-light: var(--ink-muted);--light-gray: var(--surface);--medium-gray: #e4e1db;--success: #1f7a55;--warning: #b8860b;--error: #b4232c;--shadow-sm: 0 1px 2px rgba(12, 18, 34, .06);--shadow-md: 0 6px 24px rgba(12, 18, 34, .08);--shadow-lg: 0 16px 48px rgba(12, 18, 34, .12);--shadow-xl: 0 24px 64px rgba(12, 18, 34, .14);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--primary-blue: var(--primary);--primary-blue-dark: var(--primary-hover);--secondary-green: var(--accent);--secondary-green-dark: #248a67;--primary-color: var(--primary);--primary-dark: var(--primary-hover);--secondary-color: var(--accent);--secondary-dark: #248a67;--bg-light: var(--surface);--shadow: var(--shadow-sm)}html:lang(ar){--font-sans: var(--font-arabic);--font-display: var(--font-arabic)}html:lang(he){--font-sans: var(--font-hebrew);--font-display: var(--font-hebrew)}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--surface);color:var(--text-dark);line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
