:root{--ink:#182b3d;--muted:#687780;--line:#dce3e8;--blue:#91acf0;--paper:#f4f7f9;--white:#fff;--dark:#172b3d;--good:#296343;--warn:#8a641c;--radius:10px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}[hidden]{display:none!important}button,a{-webkit-tap-highlight-color:transparent}.nk-skip{position:absolute;left:-10000px}.nk-skip:focus{left:12px;top:12px;z-index:100;background:#fff;padding:15px}.nk-sidebar{position:fixed;inset:0 auto 0 0;width:235px;background:var(--dark);color:#e8eef4;padding:36px 25px 24px;display:flex;flex-direction:column}.nk-app-brand{display:inline-flex;flex-direction:column;line-height:.92;letter-spacing:-.06em;width:145px}.nk-app-brand>span{font-size:34px;font-weight:800}.nk-app-brand small{font-size:11px;letter-spacing:.47em;margin-top:8px;padding-left:2px}.nk-sidebar-label{font-size:9px;letter-spacing:.16em;color:#9aaab8;margin:54px 8px 16px}#app-nav{display:flex;gap:5px}.nk-sidebar nav{flex-direction:column}.nk-sidebar nav button{color:#c3ced8;text-align:left;background:transparent;border:0;border-radius:6px;padding:13px 13px;font-size:13px;display:flex;gap:12px;align-items:center}.nk-sidebar nav button:hover{background:#21394d}.nk-sidebar nav button.active{background:var(--blue);color:var(--dark);font-weight:700}.nk-nav-icon{opacity:.8;width:19px;font-size:15px}.nk-sidebar-bottom{margin-top:auto;display:grid;gap:17px;font-size:12px;border-top:1px solid #3a4b5b;padding-top:25px}.nk-sidebar-bottom a{display:flex;justify-content:space-between}.nk-sidebar-bottom small{font-size:10px;color:#8f9eae;margin-top:8px}.nk-app-main{margin-left:235px}.nk-topbar{height:81px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 42px;font-size:12px}.nk-topbar>div{display:flex;align-items:center;gap:12px}.nk-tag{font-size:10px;letter-spacing:.13em;font-weight:700}.nk-topbar-divider{color:#bac4cd}.nk-user{color:var(--muted)}.nk-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e9eef8;color:#526a9b;font-size:10px;font-weight:700}.nk-user>a{border-left:1px solid var(--line);padding-left:16px;margin-left:7px}.nk-workspace{padding:38px 42px 70px;max-width:1700px;margin:auto}.nk-page-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:27px}.nk-eyebrow{font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#778799;margin:0 0 12px}.nk-page-head h1,.nk-welcome h1{font-size:32px;letter-spacing:-.045em;line-height:1.12;margin:0 0 11px}.nk-page-head p,.nk-welcome p{font-size:14px;line-height:1.6;color:var(--muted);margin:0}.nk-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.nk-button{border:1px solid var(--ink);color:#fff;background:var(--ink);border-radius:5px;padding:12px 17px;font-size:12px;font-weight:600;display:inline-flex;justify-content:center;align-items:center;gap:14px;min-height:41px}.nk-button.light{background:#fff;color:var(--ink);border-color:var(--line)}.nk-button.blue{background:var(--blue);border-color:var(--blue);color:var(--ink)}.nk-button.small{padding:8px 11px;min-height:33px;font-size:11px}.nk-text-link{border:0;background:none;padding:0;font-size:12px;line-height:1.5;text-decoration:underline;text-underline-offset:4px;color:#40566f}.nk-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:26px}.nk-stat{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px 23px}.nk-stat p{font-size:12px;color:var(--muted);margin:0 0 22px}.nk-stat strong{font-size:31px;letter-spacing:-.035em}.nk-stat small{display:block;font-size:10px;color:var(--muted);margin-top:10px}.nk-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:24px}.nk-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-bottom:23px}.nk-card-head{padding:21px 23px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:20px}.nk-card-head h2{font-size:15px;letter-spacing:-.02em;margin:0}.nk-card-head p{font-size:11px;color:var(--muted);margin:5px 0 0}.nk-card-body{padding:23px}.nk-card-body>p{font-size:13px;line-height:1.65;color:var(--muted)}.nk-empty-state{padding:35px 24px;text-align:center}.nk-empty-state h3{font-size:15px;margin:0 0 10px}.nk-empty-state p{font-size:12px;line-height:1.7;color:var(--muted);max-width:480px;margin:0 auto 15px}.nk-banner{padding:20px 23px;border:1px solid #d2def5;border-radius:8px;background:#eaf0fb;font-size:12px;line-height:1.7;margin:0 0 24px;color:#3f577c;display:flex;align-items:start;justify-content:space-between;gap:20px}.nk-banner strong{display:block;color:#293f64;margin-bottom:3px}.nk-badge{display:inline-flex;align-items:center;gap:5px;border-radius:30px;padding:5px 9px;background:#edf1f6;color:#5c6c79;font-size:10px;white-space:nowrap}.nk-badge.good{background:#e9f4eb;color:var(--good)}.nk-badge.warn{background:#faf2df;color:var(--warn)}.nk-badge.bad{background:#f9e9e7;color:#934840}.nk-list-row{padding:19px 23px;border-bottom:1px solid #edf0f3;display:flex;gap:15px;justify-content:space-between;align-items:center}.nk-list-row:last-child{border-bottom:0}.nk-list-row strong{font-size:13px;font-weight:600}.nk-list-row p{font-size:11px;line-height:1.7;color:var(--muted);margin:5px 0 0}.nk-list-row .nk-avatar{width:40px;height:40px;font-size:13px;flex:none}.nk-row-main{display:flex;gap:13px;align-items:center}.nk-table-wrap{overflow:auto}.nk-table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}.nk-table th{padding:14px 20px;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#778592;background:#fafbfd;white-space:nowrap;font-weight:600}.nk-table td{padding:18px 20px;border-top:1px solid #edf1f4;line-height:1.6;vertical-align:middle}.nk-table td small{display:block;font-size:10px;color:var(--muted)}.nk-search{width:250px;max-width:100%;background:#fff;border:1px solid var(--line);border-radius:5px;padding:11px 13px;font-size:12px}.nk-progress{height:6px;background:#edf1f4;border-radius:9px;overflow:hidden;margin-top:10px}.nk-progress>span{height:100%;display:block;background:#91acf0}.nk-dog-grid,.nk-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.nk-dog{padding:24px}.nk-dog .nk-avatar{width:46px;height:46px;font-size:19px;margin-bottom:21px;background:#e9edf5}.nk-dog h2{font-size:22px;letter-spacing:-.04em;margin:0 0 6px}.nk-dog p{font-size:12px;color:var(--muted);line-height:1.65}.nk-dog .nk-actions{margin-top:20px}.nk-meta{display:flex;gap:9px;flex-wrap:wrap;margin-top:17px}.nk-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.nk-calendar-toolbar strong{font-size:20px;letter-spacing:-.03em}.nk-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);background:#fff}.nk-cal-heading{padding:14px 8px;text-align:center;font-size:10px;font-weight:600;color:var(--muted);border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.nk-cal-day{min-height:116px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:9px;color:#5b6e7c;font-size:11px}.nk-cal-day.is-today{background:#f0f4fd}.nk-cal-day.other{background:#fafbfc;color:#c0c9d0}.nk-cal-event{display:block;background:#e7edf9;padding:6px;margin-top:6px;border-left:2px solid #8da8ee;font-size:9px;color:#365581;line-height:1.4;overflow:hidden}.nk-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.nk-dialog{border:1px solid var(--line);border-radius:12px;padding:0;max-width:680px;width:calc(100% - 30px);max-height:90dvh;color:var(--ink);box-shadow:0 30px 100px #09172e33}.nk-dialog::backdrop{background:#15263885;backdrop-filter:blur(3px)}.nk-dialog-head{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:2}.nk-dialog-head h2{font-size:21px;letter-spacing:-.035em;margin:0}.nk-dialog-head button{border:0;background:none;font-size:27px;color:var(--muted);width:30px;height:30px}.nk-form{padding:25px 28px}.nk-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.nk-form label{display:block;font-size:11px;color:#516474;font-weight:600}.nk-form label.full{grid-column:1/-1}.nk-form input:not([type=checkbox]),.nk-form select,.nk-form textarea{display:block;width:100%;padding:11px 12px;border:1px solid #ccd6df;border-radius:5px;background:#fff;margin-top:7px;color:var(--ink);font-size:13px;line-height:1.5}.nk-form textarea{min-height:100px;resize:vertical}.nk-form .checkbox{display:flex;align-items:start;gap:10px;line-height:1.7}.nk-form .checkbox input{margin-top:3px}.nk-form .nk-actions{margin-top:26px;justify-content:end}.nk-form-help{font-size:12px;line-height:1.75;color:var(--muted);margin:0 0 24px}.nk-form-error{font-size:12px;line-height:1.6;color:#913f36;background:#fbeeed;padding:12px;margin-top:18px}.nk-document{white-space:pre-wrap;line-height:1.85;font-size:13px;border:1px solid var(--line);padding:24px;background:#fafbfc;max-height:370px;overflow:auto}.nk-toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);z-index:100;background:#19364a;color:white;box-shadow:0 10px 40px #172c3940;padding:15px 24px;border-radius:6px;font-size:13px;max-width:calc(100% - 32px);line-height:1.6}.nk-loading{padding:60px;text-align:center;color:var(--muted);font-size:14px}.nk-client-header{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fff;border-bottom:1px solid var(--line);padding:25px max(4vw,25px)}.nk-client-header .nk-app-brand{width:120px}.nk-client-header .nk-app-brand>span{font-size:29px}.nk-client-header .nk-app-brand small{font-size:9px}.nk-client-header nav{flex-wrap:wrap;justify-content:center}.nk-client-header nav button{font-size:12px;border:0;border-radius:4px;background:transparent;padding:10px 13px;color:var(--muted)}.nk-client-header nav button.active{background:#e9eef9;color:#405c8d}.nk-client-workspace{max-width:1240px;padding:48px 40px 80px;margin:auto;min-height:70vh}.nk-client-footer{max-width:1240px;margin:auto;display:flex;justify-content:space-between;padding:26px 40px;font-size:11px;color:var(--muted);border-top:1px solid var(--line)}.nk-welcome{border-radius:11px;background:#182e42;color:#fff;padding:34px 37px;margin-bottom:30px;display:flex;align-items:center;justify-content:space-between;gap:25px}.nk-welcome p{color:#b8c8d8;max-width:570px}.nk-welcome .nk-eyebrow{color:#a6bced}.nk-login{max-width:960px;margin:24px auto;display:grid;grid-template-columns:1.1fr 1fr;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.nk-login-intro{padding:52px 42px;background:var(--ink);color:#fff;display:flex;flex-direction:column;justify-content:center}.nk-login-intro h1{font-size:43px;line-height:1.04;letter-spacing:-.055em;margin:0 0 22px}.nk-login-intro p{color:#b9c9d7;font-size:14px;line-height:1.8}.nk-login-intro .nk-eyebrow{color:#a9bee8}.nk-login .nk-form{padding:46px 35px;display:flex;flex-direction:column;justify-content:center}.nk-login .nk-form h2{font-size:22px;letter-spacing:-.035em}.nk-login .nk-form p{font-size:12px;color:var(--muted);line-height:1.8}.nk-client .nk-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.nk-plan-image{width:100%;height:170px;object-fit:cover}.nk-price{font-size:25px;letter-spacing:-.035em;display:block;margin:18px 0}.nk-fine{font-size:11px!important;line-height:1.7!important;color:var(--muted)}.nk-mono{font-family:monospace;overflow-wrap:anywhere;font-size:11px}.nk-wrap{overflow-wrap:anywhere}.nk-note{white-space:pre-wrap;font-size:12px;color:var(--muted);line-height:1.8}.nk-warning{color:#85592c;font-size:12px;line-height:1.7}
@media(min-width:1800px){.nk-workspace{padding-top:46px}.nk-page-head h1{font-size:36px}.nk-stats{gap:24px}.nk-stat{padding:27px}.nk-card-head{padding:24px 26px}}
@media(max-width:1100px){.nk-sidebar{width:200px;padding:30px 19px}.nk-app-main{margin-left:200px}.nk-workspace{padding:30px 24px}.nk-topbar{padding:0 24px}.nk-grid{grid-template-columns:1fr}.nk-stats{gap:12px}.nk-stat{padding:18px}.nk-dog-grid,.nk-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nk-client-header>.nk-text-link{display:none}.nk-client-workspace{padding:35px 25px}.nk-settings-grid{grid-template-columns:1fr}.nk-user>span:not(.nk-avatar){display:none}}
@media(max-width:760px){.nk-sidebar{position:static;width:auto;padding:23px 20px 15px;gap:17px}.nk-sidebar .nk-app-brand{width:113px}.nk-sidebar .nk-app-brand>span{font-size:27px}.nk-sidebar .nk-app-brand small{font-size:9px}.nk-sidebar-label,.nk-sidebar-bottom{display:none}.nk-sidebar nav{flex-direction:row;overflow:auto;gap:3px;padding-bottom:5px}.nk-sidebar nav button{white-space:nowrap;padding:10px;font-size:11px}.nk-nav-icon{display:none}.nk-app-main{margin:0}.nk-topbar{height:55px;font-size:10px;padding:0 20px}.nk-tag{font-size:8px}.nk-workspace{padding:27px 18px 50px}.nk-page-head{align-items:start;flex-direction:column;gap:17px}.nk-page-head h1,.nk-welcome h1{font-size:28px}.nk-page-head p{font-size:12px}.nk-stats,.nk-client .nk-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.nk-stat p{font-size:11px;margin-bottom:14px}.nk-stat strong{font-size:28px}.nk-banner{padding:17px;display:block}.nk-dog-grid,.nk-plan-grid{grid-template-columns:1fr}.nk-calendar{min-width:680px}.nk-calendar-wrap{overflow:auto}.nk-form-grid{grid-template-columns:1fr}.nk-form{padding:23px}.nk-dialog-head{padding:21px 23px}.nk-client-header{padding:23px;align-items:start;flex-wrap:wrap;gap:23px}.nk-client-header nav{order:2;justify-content:start;width:100%;gap:0}.nk-client-header nav button{font-size:11px;padding:10px}.nk-client-workspace{padding:26px 18px 50px}.nk-client-footer{padding:23px 18px;gap:20px;font-size:10px}.nk-welcome{padding:27px;display:block}.nk-welcome .nk-actions{margin-top:22px}.nk-login{grid-template-columns:1fr;margin-top:0}.nk-login-intro{padding:33px}.nk-login-intro h1{font-size:37px}.nk-login .nk-form{padding:29px}.nk-login-intro p{font-size:13px}.nk-table th,.nk-table td{padding:14px 16px}.nk-card-head{padding:19px}.nk-list-row{padding:18px}.nk-list-row .nk-actions{justify-content:end}.nk-topbar .nk-user a{margin:0;padding-left:10px}.nk-search{width:100%}}
@media(prefers-reduced-motion:no-preference){.nk-button{transition:background .18s,color .18s}.nk-dialog[open]{animation:nk-in .15s ease-out}@keyframes nk-in{from{transform:translateY(6px);opacity:.8}to{transform:translateY(0);opacity:1}}}
/* r2: operational forms use the same restrained scale and spacing as the approved workspace. */
.nk-hours-row{display:grid;grid-template-columns:minmax(120px,1.2fr) 1fr 1fr auto;gap:12px;align-items:end;margin-bottom:16px}.nk-hours-row label{min-width:0}.nk-hours-row input,.nk-hours-row select{width:100%;min-width:0}.nk-table .nk-wrap{max-width:360px;white-space:normal;overflow-wrap:anywhere}.nk-form select[multiple]{min-height:90px}.nk-settings-grid .nk-list-row>div:first-child{min-width:0}.nk-settings-grid .nk-list-row p{overflow-wrap:anywhere}.nk-form-help{white-space:normal}#slot-zone{min-height:20px}.nk-actions{flex-wrap:wrap}.nk-table td .nk-actions{gap:6px}.nk-table td small{overflow-wrap:anywhere}.nk-plan-image{object-fit:cover}.nk-form [readonly]{background:#f4f3ef}.nk-badge{flex-shrink:0}.nk-settings-grid .nk-list-row{align-items:flex-start}.nk-table-wrap:focus-within{outline-offset:3px}
@media(max-width:600px){.nk-hours-row{grid-template-columns:1fr 1fr;gap:10px;padding-bottom:15px;border-bottom:1px solid #deded8}.nk-hours-row label:first-child{grid-column:1/-1}.nk-hours-row button{grid-column:1/-1}.nk-settings-grid .nk-list-row{flex-wrap:wrap}.nk-table td .nk-button{white-space:nowrap}}

/* ===== Nova brand pass: the portal and trainer workspace in the website's type, palette and logo ===== */
:root{--ink:#143344;--muted:#52646d;--line:rgba(20,51,68,.14);--blue:#91acf0;--blue-soft:#e7edfa;--paper:#fcfaf5;--cream:#f4f1e9;--dark:#102f40;--navy:#102f40;
  font-family:"DM Sans",Arial,sans-serif;color:var(--ink);background:var(--paper)}
body{background:var(--paper);-webkit-font-smoothing:antialiased}
.nk-app h1,.nk-app h2,.nk-app h3{font-weight:500}
.nk-app h1 em,.nk-app h2 em{font-family:"Source Serif 4",Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.035em}
.nk-app .nk-app-brand.nk-app-logo{width:auto;display:inline-block;line-height:0;letter-spacing:0}
.nk-app-logo img{display:block;height:46px;width:auto}
.nk-sidebar .nk-app-logo img{height:52px;filter:invert(1)}
.nk-client-header{background:rgba(252,250,245,.94);padding:18px max(4vw,25px)}
.nk-client-header nav button{font-size:13px;color:var(--muted)}
.nk-client-header nav button.active{background:var(--blue-soft);color:var(--navy)}
.nk-client-header .nk-text-link{font-size:13px;font-weight:500;border-bottom:1px solid currentColor;padding-bottom:2px}
.nk-client-workspace{max-width:1320px}
.nk-client-footer{max-width:1320px;font-size:12px}
.nk-login{max-width:1040px;margin:40px auto;border-radius:14px;box-shadow:0 30px 80px rgba(16,47,64,.08)}
.nk-login-intro{background:var(--navy);padding:60px 48px}
.nk-login-intro h1{font-size:48px;line-height:1.02;letter-spacing:-.05em}
.nk-login-intro h1 em{color:var(--blue);font-size:1.02em}
.nk-login-intro p{color:#c6d3de;font-size:15px}
.nk-login-intro .nk-eyebrow{color:var(--blue)}
.nk-login .nk-form{padding:52px 44px}
.nk-login .nk-form h2{font-size:28px;letter-spacing:-.04em}
.nk-login .nk-form p{font-size:14px;line-height:1.7}
.nk-eyebrow{font-size:11px;letter-spacing:.17em;color:#6f7f88}
.nk-page-head h1,.nk-welcome h1{letter-spacing:-.05em}
.nk-page-head p,.nk-welcome p{font-size:15px}
.nk-button{border-radius:6px;font-size:13px;font-weight:600;min-height:44px;padding:12px 20px;background:var(--navy);border-color:var(--navy)}
.nk-button.light{background:#fff;color:var(--ink);border-color:var(--line)}
.nk-button.blue{background:var(--blue);border-color:var(--blue);color:var(--navy)}
.nk-card{border-radius:12px;border-color:var(--line)}
.nk-card-head h2{font-size:17px}
.nk-app input,.nk-app select,.nk-app textarea{border-color:rgba(20,51,68,.2);border-radius:6px}
.nk-app input:focus,.nk-app select:focus,.nk-app textarea:focus{border-color:var(--navy);outline:2px solid var(--blue-soft);outline-offset:0}
.nk-sidebar{background:var(--navy)}
.nk-sidebar nav button:hover{background:#18394c}
.nk-sidebar nav button.active{background:var(--blue);color:var(--navy)}
.nk-topbar{background:#fff}
@media (max-width:760px){
  .nk-login{margin:0 auto}
  .nk-login-intro{padding:36px 28px}
  .nk-login-intro h1{font-size:38px}
  .nk-login .nk-form{padding:34px 26px}
  .nk-app-logo img{height:40px}
}
