:root{--jcs-color-bg:#f4f7fb;--jcs-color-paper:#ffffff;--jcs-color-ink:#111827;--jcs-color-muted:#5f6b7a;--jcs-color-accent:#0b5bd3;--jcs-color-accent-ink:#ffffff;--jcs-color-warn:#b54708;--jcs-color-line:#d9e1ec;--jcs-space-sm:8px;--jcs-space-md:16px;--jcs-space-lg:24px;--jcs-radius:16px;--jcs-font:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--jcs-tap:48px}*,:after,:before{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--jcs-color-bg);color:var(--jcs-color-ink);font-family:var(--jcs-font);line-height:1.45;overflow-x:clip;overflow-wrap:anywhere}a{color:var(--jcs-color-accent)}:focus-visible{outline:3px solid #80b5ff;outline-offset:2px}.skip-link{position:absolute;left:var(--jcs-space-md);top:-40px;background:var(--jcs-color-accent);color:#fff;padding:8px 12px;z-index:20}.skip-link:focus{top:var(--jcs-space-md)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:750;color:var(--jcs-color-accent)}.header-meta,.lede,.muted{color:var(--jcs-color-muted)}.warn{color:var(--jcs-color-warn);margin-bottom:0}.login-page{min-height:100svh;display:grid;place-items:center;padding:var(--jcs-space-lg)}.login-card{width:min(28rem,100%)}.login-card,.login-form,.panel{background:var(--jcs-color-paper);border:1px solid var(--jcs-color-line);border-radius:var(--jcs-radius);padding:var(--jcs-space-lg);box-shadow:0 2px 8px rgb(15 23 42/.04)}.field{display:grid;grid-gap:6px;gap:6px;margin-bottom:var(--jcs-space-md)}.field label{font-weight:650}.field input,.field select,.field textarea{min-height:var(--jcs-tap);border:1px solid #c9d3e1;border-radius:12px;padding:8px 12px;font:inherit;color:inherit;background:#fff;width:100%}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--jcs-color-accent)}.field textarea{min-height:88px;resize:vertical}.banner{border:1px solid var(--jcs-color-line);border-radius:12px;padding:12px 16px;margin:0;scroll-margin-top:12px;scroll-margin-bottom:112px;overflow-wrap:anywhere}.banner-error{background:#fff4ed;border-color:#e5484d}.banner-ok{background:#ecfdf3;border-color:#12b76a}.banner-warn{background:#fffaeb;border-color:#f79009}.button-row,.field-row,.filter-bar,.header-actions,.inline-rename{display:flex;flex-wrap:wrap;gap:var(--jcs-space-md);align-items:flex-end}.filter-bar{align-items:stretch}.filter-bar input,.filter-bar select{min-height:var(--jcs-tap);border:1px solid #c9d3e1;border-radius:12px;padding:0 12px;font:inherit;flex:1 1 10rem;background:#fff}.shift-row{padding-bottom:var(--jcs-space-md);border-bottom:1px solid var(--jcs-color-line)}.shift-row .field{flex:1 1 8rem}.header-actions{align-items:center}.header-version{margin:0;font-size:.85rem;color:var(--jcs-color-muted)}.badge{display:inline-block;border-radius:999px;padding:4px 10px;background:#eaf2ff;color:#174ea6;font-size:.82rem;font-weight:650;text-transform:capitalize}.choice-set{border:0;margin:0 0 var(--jcs-space-md);padding:0;display:flex;flex-wrap:wrap;gap:12px 16px}.check-line,.choice-set label{display:flex;align-items:center;gap:8px;min-height:var(--jcs-tap)}.day-card{border:1px solid var(--jcs-color-line);border-radius:14px;padding:var(--jcs-space-md);margin:0 0 var(--jcs-space-md);background:#fff}.day-card legend{font-weight:700;padding:0 6px}.inline-rename{width:100%}.inline-rename input{flex:1 1 12rem;min-height:var(--jcs-tap);border:1px solid #c9d3e1;border-radius:12px;padding:0 12px;font:inherit}.admin-shell{min-height:100svh;max-width:56rem;margin:0 auto;padding:var(--jcs-space-lg) var(--jcs-space-md) 48px}.button{min-height:var(--jcs-tap);min-width:var(--jcs-tap);border-radius:12px;border:1px solid transparent;font:inherit;font-weight:700;padding:0 17px;cursor:pointer}.button:disabled{opacity:.6;cursor:not-allowed}.button-primary{background:var(--jcs-color-accent);color:#fff;box-shadow:0 2px 5px rgb(11 91 211/.2)}.button-quiet{background:#fff;border-color:#cbd5e1;color:#243247}.pilot-accounts{margin-top:var(--jcs-space-lg)}.pilot-accounts summary{min-height:var(--jcs-tap);display:flex;align-items:center;cursor:pointer;font-weight:600}.coach-shell{min-height:100svh;padding-bottom:calc(86px + env(safe-area-inset-bottom))}.coach-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:max(18px,env(safe-area-inset-top)) var(--jcs-space-md) 16px;background:linear-gradient(180deg,#0b5bd3,#1769dd);color:#fff;box-shadow:0 2px 8px rgb(11 91 211/.15)}.coach-header>div:first-child{min-width:0}.coach-header .eyebrow,.coach-header .header-meta{color:#eaf2ff}.coach-name{margin:3px 0;font-size:clamp(1.4rem,7vw,1.75rem);line-height:1.15;color:#fff}.header-meta{margin:0;font-size:.82rem;line-height:1.3;max-width:22rem}.header-actions-desktop{display:none}.mobile-account-menu{position:relative;flex:0 0 auto;color:var(--jcs-color-ink);font-size:.95rem}.mobile-account-menu>summary{list-style:none;min-height:var(--jcs-tap);display:inline-flex;align-items:center;justify-content:center;border:1px solid rgb(255 255 255/.48);border-radius:14px;background:rgb(255 255 255/.16);color:#fff;font-weight:750;padding:0 15px;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mobile-account-menu>summary::-webkit-details-marker{display:none}.mobile-account-menu-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:25;width:min(18rem,calc(100vw - 32px));padding:10px;display:grid;grid-gap:8px;gap:8px;background:#fff;border:1px solid var(--jcs-color-line);border-radius:16px;box-shadow:0 18px 45px rgb(15 23 42/.2)}.mobile-account-menu-panel .button{width:100%;display:inline-flex;align-items:center;justify-content:flex-start;text-decoration:none}.mobile-account-menu-panel .header-version{padding:4px 8px}.coach-nav{position:fixed;left:0;right:0;bottom:0;padding-bottom:env(safe-area-inset-bottom);background:rgb(255 255 255/.97);border-top:1px solid #dbe3ef;z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 -5px 20px rgb(15 23 42/.06)}.coach-nav ul{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;margin:0;padding:6px max(6px,env(safe-area-inset-left)) 7px max(6px,env(safe-area-inset-right));grid-gap:3px;gap:3px}.coach-nav a{display:flex;align-items:center;justify-content:center;min-height:52px;text-align:center;text-decoration:none;color:#667085;font-size:.72rem;font-weight:700;line-height:1.1;border-radius:12px;padding:6px 3px}.coach-nav a[aria-current=page]{background:#eaf2ff;color:#0757c7}.coach-nav-label-desktop{display:none}.coach-nav-label-mobile{display:inline}.coach-main{padding:18px var(--jcs-space-md) var(--jcs-space-lg)}.coach-main .banner[role=alert],.coach-main .banner[role=status]{position:-webkit-sticky;position:sticky;top:8px;z-index:6;min-width:0;max-width:100%}.stack{display:grid;grid-gap:var(--jcs-space-md);gap:var(--jcs-space-md)}.page-heading h1,.page-heading h2{margin:0;font-size:clamp(1.45rem,7vw,2rem);line-height:1.15;letter-spacing:-.02em}.page-heading p{margin:5px 0 0;color:var(--jcs-color-muted);overflow-wrap:anywhere}.stat-line{font-size:1.2rem;margin:0 0 8px}.meter{height:10px;background:#e8eef7;border-radius:999px;overflow:hidden;margin-top:12px}.meter-fill{height:100%;background:var(--jcs-color-accent)}.card-list,.progress-list,.visit-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:12px;gap:12px}.progress-list li,.visit-list li{border-top:1px solid var(--jcs-color-line);padding-top:12px}.progress-list li:first-child,.visit-list li:first-child{border-top:0;padding-top:0}.progress-list li{display:flex;justify-content:space-between;gap:12px}.visit-when,.visit-who{margin:0}.visit-who{font-weight:700}.empty-state{margin:0}.empty-state h3{margin-top:0}.skeleton{background:#e5ebf3;border-radius:10px}.skeleton-title{height:28px;width:40%}.skeleton-card{height:120px}.travel-note{margin:8px 0 0}.travel-note,details{color:var(--jcs-color-muted);font-size:.95rem}details summary{cursor:pointer}.ready-grid{list-style:none;margin:0 0 var(--jcs-space-md);padding:0;display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.ready-grid li{display:grid;grid-gap:4px;gap:4px;min-width:0}.ready-grid strong{font-size:1.15rem}.timeline,.week-switcher{display:grid;grid-gap:12px;gap:12px}.week-switcher{grid-template-columns:repeat(3,minmax(0,1fr))}.week-switcher a{text-align:center;text-decoration:none}.timeline{list-style:none;margin:0;padding:0}.timeline-event{border-top:1px solid var(--jcs-color-line);padding-top:12px;display:grid;grid-gap:8px;gap:8px}.timeline-event:first-child{border-top:0}.timeline-locked{background:#f7f9fc;border:1px solid var(--jcs-color-line);border-radius:12px;padding:12px}.day-panel h3{font-size:1.05rem}.identity-grid strong{font-size:1rem;overflow-wrap:anywhere}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.export-table{width:100%;border-collapse:collapse;font-size:.85rem}.export-table td,.export-table th{border-bottom:1px solid var(--jcs-color-line);padding:8px 10px;text-align:left;vertical-align:top;white-space:nowrap}.export-table th{background:#eef3f9;position:-webkit-sticky;position:sticky;top:0}textarea{width:100%;min-height:96px;font:inherit;padding:10px 12px;border:1px solid var(--jcs-color-line);border-radius:12px}.update-banner{position:-webkit-sticky;position:sticky;top:0;z-index:30;display:flex;flex-wrap:wrap;gap:var(--jcs-space-md);align-items:center;justify-content:space-between;padding:12px var(--jcs-space-md);background:#ecfdf3;border-bottom:1px solid #12b76a}.update-banner p{margin:0}.admin-nav{display:flex;flex-wrap:wrap;gap:12px;padding:0 var(--jcs-space-md) var(--jcs-space-md)}.admin-nav a{min-height:var(--jcs-tap);display:inline-flex;align-items:center;font-weight:600}.install-card{width:min(40rem,100%)}.install-guidance .page-heading h1{font-size:1.75rem}.install-guidance ol{padding-left:1.25rem}.audit-filters{align-items:flex-end}.audit-table td,.audit-table th{white-space:normal;overflow-wrap:anywhere}.card-list h3,.coach-name,.page-heading h2{overflow-wrap:anywhere}@media (max-width:520px){.login-card,.login-form,.panel{padding:18px 16px;border-radius:16px}.button-row,.field-row,.filter-bar{gap:10px}.button-row>.button,.button-row>a.button{flex:1 1 100%;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.week-switcher{grid-template-columns:1fr}.progress-list li{align-items:flex-start}}@media (min-width:880px){.week-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--jcs-space-md);gap:var(--jcs-space-md)}.week-workspace .page-heading p{max-width:40rem}.ready-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.coach-shell{display:grid;grid-template-columns:220px minmax(0,56rem);grid-template-rows:auto 1fr;grid-column-gap:32px;column-gap:32px;padding:32px 40px 48px;max-width:1100px;margin:0 auto}.coach-header{grid-column:2;padding:22px 24px;border-radius:18px}.coach-name{font-size:1.75rem}.header-meta{font-size:.95rem}.header-actions-desktop{display:flex}.header-actions-desktop .header-version{color:#eaf2ff}.header-actions-desktop .button-quiet,.header-actions-desktop a{border-color:rgb(255 255 255/.45);color:#fff;background:rgb(255 255 255/.1)}.mobile-account-menu{display:none}.coach-nav{position:static;grid-column:1;grid-row:1/span 2;border:0;background:#fff;padding:12px;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:18px;box-shadow:0 2px 10px rgb(15 23 42/.06);align-self:start}.coach-nav ul{display:flex;flex-direction:column;gap:6px;padding:0}.coach-nav a{justify-content:flex-start;font-size:.95rem;padding:0 14px;min-height:var(--jcs-tap);color:#445166}.coach-nav a[aria-current=page]{background:var(--jcs-color-accent);color:#fff}.coach-nav-label-desktop{display:inline}.coach-nav-label-mobile{display:none}.coach-main{grid-column:2;padding:20px 0 0}.coach-main .banner[role=alert],.coach-main .banner[role=status]{top:0}.page-heading h1,.page-heading h2{font-size:2rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--jcs-color-bg:#e9eef0;--jcs-color-paper:#fbfcfa;--jcs-color-ink:#10283b;--jcs-color-muted:#566a77;--jcs-color-accent:#245866;--jcs-color-accent-ink:#fbfcfa;--jcs-color-warn:#764f56;--jcs-color-line:#cbd5d8;--jcs-radius:14px}body,html{background:#e9eef0;color:#10283b}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:#245866}:focus-visible{outline-color:#6f98a3}.day-card,.login-card,.login-form,.panel{background:#fbfcfa;border-color:#cbd5d8;box-shadow:0 8px 24px rgb(16 40 59/.055)}.panel{overflow:hidden}.panel>.panel-heading:first-child h3,.panel>h3:first-child{color:#16384a;letter-spacing:-.012em}.field input,.field select,.field textarea,.filter-bar input,.filter-bar select,.inline-rename input,textarea{background:#f8faf9;border-color:#bcc9ce}.field input:focus,.field select:focus,.field textarea:focus,.filter-bar input:focus,.filter-bar select:focus,textarea:focus{border-color:#477984;box-shadow:0 0 0 3px rgb(71 121 132/.12);outline:0}.button{border-radius:11px;transition:background .12s ease,border-color .12s ease,transform .12s ease,box-shadow .12s ease}.button:not(:disabled):active{transform:translateY(1px)}.button-primary{background:#245866;color:#fbfcfa;box-shadow:0 3px 9px rgb(16 40 59/.13)}.button-primary:hover:not(:disabled){background:#1b4653}.button-quiet{background:#f7f9f8;border-color:#bfcbd0;color:#18384a}.button-quiet:hover:not(:disabled){background:#edf2f1;border-color:#aab9bf}.eyebrow{color:#315f69}.badge{background:#e2ecec;color:#244f59}.banner-error{background:#f8eeee;border-color:#b88088;color:#5c343a}.banner-ok{background:#e9f2ed;border-color:#78a18c;color:#295442}.banner-warn{background:#f2efec;border-color:#a89286;color:#604e45}.coach-header{background:linear-gradient(135deg,#102f40,#1f5361);box-shadow:0 8px 28px rgb(16 47 64/.18)}.coach-header .eyebrow,.coach-header .header-meta,.header-actions-desktop .header-version{color:#dce8e9}.coach-header .button-quiet,.coach-header .header-actions-desktop a{color:#f7fbfa}.mobile-account-menu>summary{border-color:rgb(255 255 255/.34);background:rgb(255 255 255/.1)}.mobile-account-menu-panel{background:#fbfcfa;border-color:#cbd5d8;box-shadow:0 20px 50px rgb(16 40 59/.2)}.coach-nav{background:rgb(248 250 249/.97);border-color:#cbd5d8}.coach-nav a{color:#596b77}.coach-nav a[aria-current=page]{background:#dfe9e9;color:#173f4a}.coach-name,.page-heading h1,.page-heading h2{letter-spacing:-.025em}.meter{background:#dfe7e8}.meter-fill{background:#356d76}.week-switcher .button[aria-current=page]{background:#dfe9e9;border-color:#8ca7ad;color:#173f4a}.week-days{align-items:start}.day-panel{padding:0}.day-panel>h3{margin:0;padding:14px 16px;background:#e3ebec;border-bottom:1px solid #bdcbd0;color:#17394a;font-size:1rem}.day-panel>.muted,.day-panel>.timeline{margin:0;padding:14px 16px 16px}.timeline{gap:0}.timeline-event{position:relative;padding:14px 0 14px 14px;border-top:1px solid #d2dcdf}.timeline-event:before{content:"";position:absolute;left:0;top:17px;bottom:17px;width:3px;border-radius:999px;background:#76939a}.timeline-event:first-child{padding-top:0}.timeline-event:first-child:before{top:3px}.timeline-locked{background:#eef2f2;border-color:#c7d2d5}.visit-when{color:#3d5665;font-size:.9rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.visit-who{color:#102f40}.travel-note{color:#627783}.timeline-event details{margin-top:10px;border:1px solid #c4d0d3;border-radius:11px;background:#f1f5f4;color:#465f6c;overflow:hidden}.timeline-event details summary{min-height:44px;display:flex;align-items:center;padding:9px 12px;font-weight:720;color:#224d59;list-style-position:inside}.timeline-event details[open] summary{border-bottom:1px solid #cbd5d8;background:#e7eeed}.timeline-event details>p{margin:0;padding:12px;line-height:1.5}.export-table{border-collapse:separate;border-spacing:0;border:1px solid #bac8cd;border-radius:10px;overflow:hidden;background:#fbfcfa}.export-table td,.export-table th{border-right:1px solid #d3dcdf;border-bottom:1px solid #d3dcdf;padding:9px 10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.export-table td:last-child,.export-table th:last-child{border-right:0}.export-table tbody tr:last-child td{border-bottom:0}.export-table th{background:#dfe8e9;color:#16384a;font-weight:750}.export-table tbody tr:nth-child(2n) td{background:#f4f7f6}.export-actions-panel{border-top:4px solid #315f69}.share-pdf-button{background:#173f4a;color:#f8fbfa}.share-pdf-button:hover:not(:disabled){background:#102f40}.smart-assistant-panel{border-top:4px solid #627f87;background:linear-gradient(180deg,#f7faf9,#eef3f2)}.update-banner{background:#e9f2ed;border-bottom-color:#78a18c}@media (min-width:880px){.coach-shell{max-width:1180px;grid-template-columns:224px minmax(0,1fr)}.coach-nav{background:#f8faf9;border:1px solid #ccd6d9;box-shadow:0 10px 30px rgb(16 40 59/.07)}.coach-nav a[aria-current=page]{background:#245866;color:#f8fbfa}.coach-header{padding:24px 26px}.week-days{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.coach-main{padding-top:14px}.login-card,.login-form,.panel{box-shadow:0 5px 18px rgb(16 40 59/.05)}.day-panel>h3{padding:13px 14px}.day-panel>.muted,.day-panel>.timeline{padding-left:14px;padding-right:14px}}.schedule-assistant{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:calc(78px + env(safe-area-inset-bottom));z-index:40}.assistant-launcher{min-height:48px;display:inline-flex;align-items:center;gap:9px;border:1px solid #315f69;border-radius:999px;padding:0 17px;background:#173f4a;color:#f8fbfa;font:inherit;font-weight:750;box-shadow:0 12px 28px rgb(16 40 59/.22);cursor:pointer}.assistant-launcher span:first-child{font-size:1.1rem}.assistant-card{position:absolute;right:0;bottom:60px;width:min(430px,calc(100vw - 32px));max-height:min(650px,calc(100svh - 150px));overflow-y:auto;padding:18px;border:1px solid #b9c8cc;border-radius:18px;box-shadow:0 24px 70px rgb(16 40 59/.25)}.assistant-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.assistant-heading h2{margin:2px 0 0;color:#102f40;font-size:1.3rem;letter-spacing:-.02em}.assistant-close{width:40px;height:40px;border:1px solid #c5d0d3;border-radius:11px;background:#f7f9f8;color:#284b58;font-size:1.4rem;line-height:1;cursor:pointer}.assistant-quick-actions{display:grid;grid-gap:8px;gap:8px;margin:14px 0}.assistant-quick-actions button{min-height:42px;border:1px solid #c1ced1;border-radius:11px;padding:8px 11px;background:#f7f9f8;color:#214553;font:inherit;font-size:.88rem;text-align:left;cursor:pointer}.assistant-quick-actions button:hover:not(:disabled){background:#e8efee}.assistant-field{margin-top:10px}.assistant-field textarea{min-height:96px}.assistant-answer{margin-top:14px;padding:14px;border:1px solid #c4d0d3;border-radius:12px;background:#fbfcfa;color:#18384a;white-space:pre-wrap;line-height:1.55}@media (min-width:880px){.schedule-assistant{right:28px;bottom:28px}}@media (max-width:520px){.schedule-assistant{right:12px}.assistant-launcher{min-height:46px;padding:0 14px}.assistant-card{position:fixed;left:12px;right:12px;bottom:calc(82px + env(safe-area-inset-bottom));width:auto;max-height:calc(100svh - 120px)}}.professional-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.summary-tile{min-width:0;padding:14px;border:1px solid #c5d0d3;border-radius:13px;background:#f8faf9;box-shadow:0 4px 14px rgb(16 40 59/.04)}.summary-tile small,.summary-tile span{display:block;color:#5d707b}.summary-tile span{margin-bottom:5px;font-size:.75rem;font-weight:750;text-transform:uppercase;letter-spacing:.055em}.summary-tile strong{display:block;color:#15384a;font-size:1.55rem;line-height:1.05;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.summary-tile small{margin-top:5px;font-size:.78rem}.summary-tile-attention{border-color:#b89ca1;background:#f5eeee}.maps-button{width:-moz-fit-content;width:fit-content;min-height:42px;display:inline-flex;align-items:center;text-decoration:none}@media (min-width:720px){.professional-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:520px){.professional-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-tile{padding:12px}.summary-tile strong{font-size:1.35rem}.maps-button{width:100%;justify-content:center;text-align:center}}