/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.block{display:block}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#18211b;--muted:#69746c;--line:#dfe6de;--paper:#fff;--canvas:#f3f6f1;--green:#245f3f;--green-dark:#163c29;--green-soft:#e8f2e8;--amber:#d59a2e;--amber-soft:#fff4dc;--red:#b94a45;--red-soft:#fdebea;--blue:#396b85;--shadow:0 14px 42px #19362214;--radius:18px}.action-gallery,.community-legacy,.visit-training{background:linear-gradient(145deg,#071124eb,#030813cc);border:1px solid #5697ff33;border-radius:34px;width:min(1420px,100% - 48px);margin:38px auto;overflow:hidden;box-shadow:0 30px 90px #00000061,inset 0 1px #ffffff0d}.action-gallery{padding:clamp(28px,5vw,70px)}.action-gallery-heading{grid-template-columns:1fr 1fr;align-items:end;gap:10px 50px;margin-bottom:34px;display:grid}.action-gallery-heading>span,.community-legacy>div>span,.visit-training>div>span{color:#f3c754;letter-spacing:.2em;font-size:.73rem;font-weight:900}.action-gallery-heading h2,.community-legacy h2,.visit-training h2{color:#f7faff;letter-spacing:-.055em;margin:8px 0 0;font-size:clamp(2.2rem,5vw,5rem);line-height:.93}.action-gallery-heading h2 em,.community-legacy h2 em,.visit-training h2 em{color:#5fa7ff;font-style:normal}.action-gallery-heading p{color:#aebbd0;max-width:610px;margin:0;line-height:1.7}.training-video-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.training-video-grid article{background:#040a16f0;border:1px solid #71a4ff33;border-radius:24px;min-width:0;transition:transform .25s,border-color .25s,box-shadow .25s;position:relative;overflow:hidden}.training-video-grid article:hover{border-color:#f1c34d8c;transform:translateY(-4px);box-shadow:0 18px 45px #00000061}.training-video-grid article.featured{grid-area:span 2/span 2}.training-video-grid video{aspect-ratio:16/10;object-fit:contain;background:#000;width:100%;display:block}.training-video-grid article.featured video{aspect-ratio:16/9}.training-video-grid article>div{color:#fff;align-items:center;gap:12px;padding:16px 18px;display:flex}.training-video-grid article>div span{color:#f2c856;background:#efc14612;border:1px solid #efc14659;border-radius:11px;flex:0 0 34px;place-items:center;height:34px;font-size:.7rem;font-weight:900;display:grid}.training-video-grid article>div strong{font-size:1rem}.training-video-grid article>div p{color:#9dabc0;max-width:48%;margin:0 0 0 auto;font-size:.86rem;line-height:1.5}.facebook-gallery-link{color:#f3ce68;background:#efc1460d;border:1px solid #efc14640;border-radius:18px;justify-content:center;gap:10px;margin-top:20px;padding:17px;font-weight:800;text-decoration:none;display:flex}.community-legacy{grid-template-columns:1.08fr .92fr;padding:0;display:grid}.legacy-photo{background:#050a14;min-height:540px;display:block;position:relative;overflow:hidden}.legacy-photo img{object-fit:cover;filter:saturate(.86)contrast(1.08);width:100%;height:100%}.legacy-photo:after{content:"";background:linear-gradient(#0000 50%,#020711eb);position:absolute;inset:0}.legacy-photo span{z-index:1;color:#fff;letter-spacing:.08em;font-size:.78rem;font-weight:800;position:absolute;bottom:25px;left:28px}.community-legacy>div{flex-direction:column;justify-content:center;padding:clamp(30px,5vw,72px);display:flex}.community-legacy h2,.visit-training h2{font-size:clamp(2.15rem,4.2vw,4.3rem)}.community-legacy p,.visit-training p{color:#aebbd0;line-height:1.72}.visit-training{grid-template-columns:1.1fr .9fr;gap:55px;padding:clamp(30px,5vw,70px);display:grid}.visit-details{grid-template-columns:1fr 1fr;gap:12px;display:grid}.visit-details article{background:#0e1c3494;border:1px solid #5fa7ff33;border-radius:20px;padding:22px}.visit-details article:nth-child(3){grid-column:1/-1}.visit-details small{color:#6daeff;letter-spacing:.15em;margin-bottom:9px;font-size:.66rem;font-weight:900;display:block}.visit-details strong{color:#fff;font-size:1.05rem}.visit-details article p{margin:7px 0 0;font-size:.84rem}.visit-details>a{color:#061020;background:linear-gradient(100deg,#f4c64f,#fff0a7);border-radius:18px;grid-column:1/-1;justify-content:space-between;padding:20px 22px;font-weight:900;text-decoration:none;display:flex;box-shadow:0 14px 35px #e1a9272e}@media (max-width:900px){.action-gallery-heading,.community-legacy,.visit-training{grid-template-columns:1fr}.training-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.legacy-photo{min-height:400px}.visit-training{gap:28px}}@media (max-width:600px){.action-gallery,.community-legacy,.visit-training{border-radius:25px;width:calc(100% - 22px);margin:18px auto}.action-gallery,.visit-training{padding:25px 16px}.action-gallery-heading{grid-template-columns:1fr;margin-bottom:22px}.action-gallery-heading p{font-size:.94rem}.training-video-grid{grid-template-columns:1fr;gap:12px}.training-video-grid article.featured{grid-area:auto}.training-video-grid article>div p{display:none}.training-video-grid video,.training-video-grid article.featured video{aspect-ratio:16/10}.community-legacy>div{padding:30px 20px}.legacy-photo{min-height:300px}.visit-details{grid-template-columns:1fr}.visit-details article:nth-child(3),.visit-details>a{grid-column:auto}}.registration-showcase{background:radial-gradient(circle at 80% 0,#2c70e438,#0000 42%),#050d1deb;border:1px solid #efc14640;border-radius:34px;grid-template-columns:1.12fr .88fr;align-items:center;gap:clamp(28px,5vw,70px);width:min(1420px,100% - 48px);margin:38px auto;padding:clamp(22px,4vw,48px);display:grid;box-shadow:0 30px 90px #00000061}.registration-showcase video{aspect-ratio:16/10;object-fit:contain;background:#000;border-radius:24px;width:100%;max-height:560px;display:block;box-shadow:0 20px 55px #0000007a}.registration-showcase span{color:#f3c754;letter-spacing:.18em;font-size:.72rem;font-weight:900}.registration-showcase h2{color:#fff;letter-spacing:-.055em;margin:12px 0;font-size:clamp(2.2rem,4.4vw,4.6rem);line-height:.95}.registration-showcase p{color:#aebbd0;line-height:1.7}.registration-showcase a{color:#061020;background:linear-gradient(100deg,#f4c64f,#fff0a7);border-radius:18px;justify-content:space-between;margin-top:22px;padding:18px 20px;font-weight:900;text-decoration:none;display:flex}@media (max-width:800px){.registration-showcase{border-radius:25px;grid-template-columns:1fr;width:calc(100% - 22px);margin:18px auto;padding:18px}.registration-showcase>div{padding:8px 4px 6px}}.training-benefits,.everyday-training,.training-pathway,.training-faq{z-index:2;-webkit-backdrop-filter:blur(24px)saturate(120%);background:linear-gradient(145deg,#050e1fe8,#020813db);border:1px solid #70a7ff38;border-radius:34px;width:min(1420px,100% - 48px);margin:24px auto;padding:clamp(42px,5vw,68px);position:relative;box-shadow:0 30px 90px #00000075,inset 0 1px #fff1}.benefits-heading,.everyday-intro,.pathway-heading{max-width:900px}.benefits-heading>span,.everyday-intro>span,.pathway-heading>span,.training-faq>div>span{color:#f3c754;letter-spacing:.19em;font-size:.72rem;font-weight:900}.benefits-heading h2,.everyday-intro h2,.pathway-heading h2,.training-faq h2{color:#fff;letter-spacing:-.055em;margin:12px 0 18px;font-size:clamp(2.3rem,5vw,5rem);line-height:.95}.benefits-heading h2 em,.everyday-intro h2 em,.pathway-heading h2 em,.training-faq h2 em{color:#62adff;font-style:normal}.benefits-heading p,.everyday-intro p,.pathway-heading p,.training-faq>div>p{color:#b2c0d3;font-size:1.05rem;line-height:1.72}.benefit-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:36px;display:grid}.benefit-grid article{background:linear-gradient(145deg,#0f213bc2,#050e1cd1);border:1px solid #62a5f733;border-radius:22px;flex-direction:column;min-height:230px;padding:25px;display:flex}.benefit-grid b{color:#f2c454;letter-spacing:.12em;font-size:.75rem}.benefit-grid h3{color:#fff;margin:auto 0 10px;font-size:1.35rem}.benefit-grid p{color:#98aac1;margin:0;line-height:1.62}.everyday-training{grid-template-columns:.9fr 1.1fr;align-items:center;gap:60px;display:grid}.everyday-list{grid-template-columns:1fr 1fr;gap:12px;display:grid}.everyday-list article{background:#0e1e36b8;border-left:3px solid #4f9eff;border-radius:18px;padding:24px}.everyday-list article:nth-child(2n){border-left-color:#e8bb4f}.everyday-list strong{color:#fff;font-size:1.15rem}.everyday-list p{color:#9dafc6;margin:9px 0 0;line-height:1.58}.training-pathway{grid-template-columns:.8fr 1.2fr;gap:65px;display:grid}.pathway-steps{gap:12px;display:grid}.pathway-steps article{background:#0b1a30b8;border:1px solid #64a8fa33;border-radius:20px;padding:24px 26px}.pathway-steps span{color:#f1c554;letter-spacing:.16em;font-size:.67rem;font-weight:900}.pathway-steps h3{color:#fff;margin:8px 0;font-size:1.2rem}.pathway-steps p{color:#9eb0c6;margin:0;line-height:1.58}.training-faq{grid-template-columns:.75fr 1.25fr;gap:60px;display:grid}.faq-list{gap:10px;display:grid}.faq-list details{background:#0a182dc2;border:1px solid #64a8fa33;border-radius:18px;padding:0 22px}.faq-list summary{cursor:pointer;color:#fff;padding:20px 34px 20px 0;font-size:1rem;font-weight:800;list-style:none;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";color:#f2c454;font-size:1.5rem;position:absolute;right:0}.faq-list details[open] summary:after{content:"–"}.faq-list details p{color:#9fb1c7;margin:0;padding:0 0 20px;line-height:1.65}@media (max-width:900px){.benefit-grid{grid-template-columns:1fr 1fr}.everyday-training,.training-pathway,.training-faq{grid-template-columns:1fr;gap:32px}}@media (max-width:600px){.training-benefits,.everyday-training,.training-pathway,.training-faq{border-radius:25px;width:calc(100% - 22px);margin:14px auto;padding:32px 18px}.benefit-grid,.everyday-list{grid-template-columns:1fr}.benefit-grid article{min-height:190px}.benefits-heading p,.everyday-intro p,.pathway-heading p,.training-faq>div>p{font-size:1rem}}.public-home{isolation:isolate;background:#020711;position:relative}.public-home>header,.public-home>section,.public-home>footer{z-index:2;position:relative}.public-home .cinematic-hero{z-index:1}.public-home .hero-media{width:100vw;height:100dvh;overflow:hidden;z-index:-3!important;position:fixed!important;inset:0!important}.public-home .hero-media video{object-fit:cover;object-position:center;width:100%;height:100%}.public-home:before{content:"";z-index:-2;pointer-events:none;background:linear-gradient(#01050e7a,#010610b8 52%,#01050ce0),radial-gradient(circle at 50% 25%,#0000,#00040c8c 78%);position:fixed;inset:0}.public-home .hero-vignette{pointer-events:none;background:linear-gradient(90deg,#010610b3,#0000 38%,#01061059),linear-gradient(#0000 54%,#01050ddb);z-index:-1!important;position:fixed!important;inset:0!important}.public-home .cinematic-hero{background:0 0}.public-home .legacy-section,.public-home .handler-philosophy,.public-home .community-section,.public-home .training-journey,.public-home .kennels-story,.public-home .overview-section,.public-home .access-section{-webkit-backdrop-filter:blur(24px)saturate(120%);background:linear-gradient(145deg,#050e1fe8,#020813db);border:1px solid #70a7ff38;border-radius:34px;width:min(1420px,100% - 48px);margin:24px auto;padding:clamp(42px,5vw,68px) clamp(24px,5vw,70px);box-shadow:0 30px 90px #00000075,inset 0 1px #fff1}.public-home .training-journey{padding-top:clamp(38px,5vw,62px);padding-bottom:clamp(38px,5vw,62px)}.public-home .overview-section,.public-home .access-section{padding-top:clamp(46px,6vw,74px);padding-bottom:clamp(46px,6vw,74px)}.public-home .action-gallery,.public-home .community-legacy,.public-home .visit-training,.public-home .registration-showcase,.public-home .public-footer{-webkit-backdrop-filter:blur(22px)saturate(125%)}@media (max-width:600px){.public-home .hero-media video{object-position:52% center}.public-home .legacy-section,.public-home .handler-philosophy,.public-home .community-section,.public-home .training-journey,.public-home .kennels-story,.public-home .overview-section,.public-home .access-section{-webkit-backdrop-filter:blur(16px)saturate(120%);background:linear-gradient(145deg,#050e1fdb,#020813c2);border-radius:25px;width:calc(100% - 22px);margin:14px auto;padding:32px 18px}.public-home .training-journey,.public-home .overview-section,.public-home .access-section{padding-top:32px;padding-bottom:32px}}.family-drawer{width:min(780px,100%)}.family-drawer-hero{background:linear-gradient(135deg,#1a5ccd2e,#f0b43014);border-bottom:1px solid #ffffff17;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:28px 30px 22px;display:grid}.family-drawer-hero h2{margin:3px 0 5px;font-size:clamp(1.6rem,4vw,2.35rem)}.family-drawer-hero p{color:var(--muted);margin:0}.family-drawer-photo{object-fit:cover;border:1px solid #f0bd5973;border-radius:18px;width:68px;height:68px;box-shadow:0 12px 30px #00000059}.family-profile-handlers{gap:10px;display:grid}.family-handler-card{background:#ffffff09;border:1px solid #ffffff17;border-radius:16px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:13px;display:grid}.family-handler-card>div{gap:3px;display:grid}.family-handler-card small{color:var(--muted)}@media (max-width:680px){.family-drawer-hero{grid-template-columns:auto 1fr;gap:13px;padding:24px 18px 18px}.family-drawer-hero>.status-pill{grid-column:1/-1;justify-self:start}.family-handler-card{grid-template-columns:auto 1fr}.family-handler-card>.status-pill{justify-self:start}.family-handler-card>button{grid-column:1/-1;width:100%}.family-drawer .drawer-section{padding-inline:16px}}.launcher-button{position:relative}.nav-notification{color:#07101f;background:linear-gradient(135deg,#ffca4f,#f08a24);border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:10px;font-weight:900;display:grid;position:absolute;top:7px;right:8px;box-shadow:0 0 18px #f0b4308c}.chat-shell{grid-template-columns:minmax(240px,310px) 1fr;gap:16px;min-height:min(680px,100vh - 245px);display:grid}.chat-sidebar,.chat-panel{padding:0;overflow:hidden}.chat-sidebar-head{border-bottom:1px solid #ffffff14;padding:22px}.chat-sidebar-head h2{margin:4px 0 12px}.notification-button{color:var(--gold);font:inherit;cursor:pointer;background:#f0b43014;border:1px solid #f0b4304d;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800}.chat-contact-label{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;padding:18px 18px 8px;font-size:10px;font-weight:900}.chat-contact{width:calc(100% - 16px);color:var(--text);text-align:left;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:15px;grid-template-columns:auto 1fr;align-items:center;gap:11px;margin:4px 8px;padding:12px;display:grid}.chat-contact:hover,.chat-contact.active{background:linear-gradient(135deg,#2e75f22e,#ffffff0b);border-color:#408eff4d}.chat-contact>span:last-child{gap:3px;min-width:0;display:grid}.chat-contact small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.group-avatar{width:42px;height:42px;color:var(--gold);background:linear-gradient(145deg,#f0b43033,#276ce63d);border:1px solid #f0b43061;border-radius:14px;flex:0 0 42px;place-items:center;font-size:13px;font-weight:900;display:grid;box-shadow:inset 0 1px #ffffff1f}.chat-panel{grid-template-rows:auto 1fr auto;min-width:0;display:grid}.chat-header{background:#060f1e6b;border-bottom:1px solid #ffffff14;align-items:center;gap:12px;padding:17px 20px;display:flex}.chat-header h2{margin:0 0 2px;font-size:1.05rem}.chat-header p{color:var(--muted);margin:0;font-size:12px}.chat-live{color:#75dca6;align-items:center;gap:6px;margin-left:auto;font-size:11px;font-weight:800;display:flex}.chat-live i{background:#46d790;border-radius:50%;width:7px;height:7px;box-shadow:0 0 10px #46d790}.chat-messages{background:radial-gradient(circle at 50% 0,#2568da17,#0000 50%);flex-direction:column;gap:9px;height:min(520px,100vh - 390px);min-height:360px;padding:22px;display:flex;overflow-y:auto}.chat-empty{text-align:center;max-width:330px;color:var(--muted);margin:auto}.chat-empty>span{width:62px;height:62px;color:var(--blue-bright);background:#276ce61f;border:1px solid #408eff4d;border-radius:20px;place-items:center;margin:0 auto 14px;font-weight:900;display:grid}.chat-empty h3{color:var(--text);margin:0 0 6px}.chat-bubble{background:#ffffff0f;border:1px solid #ffffff17;border-radius:5px 17px 17px;align-self:flex-start;max-width:min(72%,560px);padding:10px 13px 8px;box-shadow:0 8px 26px #0000001f}.chat-bubble.mine{background:linear-gradient(145deg,#276ce6b3,#1f48a1ad);border-color:#4489ff4d;border-radius:17px 5px 17px 17px;align-self:flex-end}.chat-bubble>strong{color:var(--gold);gap:8px;font-size:12px;display:flex}.chat-bubble>strong small{color:var(--muted);text-transform:capitalize;font-weight:600}.chat-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0;line-height:1.45}.chat-bubble time{color:#dae4f685;text-align:right;font-size:9px;display:block}.chat-composer{background:#050d1bb8;border-top:1px solid #ffffff14;grid-template-columns:1fr auto;gap:10px;padding:14px;display:grid}.chat-composer textarea{resize:vertical;min-height:46px;max-height:120px;color:var(--text);font:inherit;background:#ffffff0e;border:1px solid #6797e63d;border-radius:15px;padding:13px 15px}@media (max-width:760px){.chat-shell{grid-template-columns:1fr;min-height:0}.chat-sidebar{white-space:nowrap;padding:10px;overflow-x:auto}.chat-sidebar-head{border:0;align-items:center;gap:10px;padding:8px;display:flex}.chat-sidebar-head .eyebrow{display:none}.chat-sidebar-head h2{margin:0;font-size:1rem}.chat-contact-label{display:none}.chat-contact{vertical-align:middle;width:auto;min-width:168px;margin:2px;display:inline-grid}.chat-panel{min-height:570px}.chat-header{padding:13px}.chat-header p{white-space:nowrap;text-overflow:ellipsis;max-width:210px;overflow:hidden}.chat-messages{height:430px;min-height:360px;padding:15px 12px}.chat-bubble{max-width:88%}.chat-composer{padding:10px;position:sticky;bottom:0}.chat-composer .primary-button{padding-inline:17px}}.section-back-button{color:var(--text);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);cursor:pointer;background:linear-gradient(145deg,#122641d4,#060f1de0);border:1px solid #5ea3ff2e;border-radius:15px;align-items:center;gap:10px;margin:0 0 16px;padding:9px 13px 9px 9px;display:inline-flex;box-shadow:0 12px 28px #00000038,inset 0 1px #ffffff0e}.section-back-button>span{color:#78baff;background:#2777eb21;border:1px solid #63acff33;border-radius:11px;place-items:center;width:35px;height:35px;font-size:27px;line-height:1;display:grid}.section-back-button>div{text-align:left;gap:2px;display:grid}.section-back-button strong{font-size:11px}.section-back-button small{color:var(--muted);font-size:8px}.drawer-back{border-radius:12px;gap:5px;width:auto;min-width:78px;padding:0 12px;font-size:22px}.drawer-back span{font-size:10px;font-weight:850}@media (max-width:760px){body{padding-bottom:calc(22px + env(safe-area-inset-bottom))}body:has(.portal-shell.section-overview){padding-bottom:calc(158px + env(safe-area-inset-bottom))}.portal-shell:not(.section-overview) .content{padding-bottom:calc(34px + env(safe-area-inset-bottom))}.portal-shell.section-overview .content{padding-bottom:28px}.launcher{grid-template-columns:repeat(4,minmax(0,1fr));min-height:132px}.section-back-button{z-index:55;background:linear-gradient(145deg,#0d1f36f5,#050e1bf7);margin:-4px 0 16px;position:sticky;top:75px;box-shadow:0 12px 32px #00000057}.portal-shell:not(.section-overview) .page-heading{padding-top:2px}}@media (max-width:390px){.launcher{grid-template-columns:repeat(4,minmax(0,1fr))}}*{box-sizing:border-box}html{background:var(--canvas);scroll-behavior:smooth}body{background:radial-gradient(circle at 92% 2%, #4d81541f, transparent 25%), var(--canvas);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button{color:inherit}:is(button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible){outline-offset:2px;outline:3px solid #245f3f38}.portal-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:40;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffeb;border-bottom:1px solid #163c291a;justify-content:space-between;align-items:center;gap:24px;min-height:84px;padding:13px clamp(16px,4vw,52px);display:flex;position:sticky;top:0;box-shadow:0 8px 30px #112d190d}.brand-lockup{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0;display:flex}.brand-lockup>span:last-child,.user-summary>span{flex-direction:column;display:flex}.brand-lockup strong{font-family:var(--font-geist-sans), Arial, sans-serif;letter-spacing:-.03em;font-size:18px}.brand-lockup small{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;margin-top:2px;font-size:10px}.brand-mark{color:#fff;background:linear-gradient(145deg,#2c724c,#173d2a);border-radius:14px;flex:none;place-items:center;width:51px;height:51px;font-family:Georgia,serif;font-size:19px;font-weight:800;display:grid;box-shadow:0 9px 22px #163c2933}.topbar-actions{align-items:center;gap:15px;display:flex}.view-switch{background:#edf1ec;border-radius:12px;padding:4px;display:inline-flex}.view-switch button{color:#647067;cursor:pointer;background:0 0;border:0;border-radius:9px;min-height:34px;padding:0 11px;font-size:11px;font-weight:800}.view-switch button.active{color:var(--green-dark);background:#fff;box-shadow:0 4px 12px #1a362217}.user-summary{align-items:center;gap:9px;display:flex}.user-summary strong{font-size:12px}.user-summary small{color:var(--muted);text-transform:capitalize;margin-top:2px;font-size:10px}.person-avatar{background:var(--amber-soft);color:#7f5a13;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-size:11px;font-weight:900;display:grid}.logout-button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:11px;min-height:42px;padding:0 15px;font-size:12px;font-weight:800}.launcher{grid-template-columns:repeat(7,minmax(104px,1fr));gap:11px;width:min(1500px,100%);margin:0 auto;padding:22px clamp(16px,4vw,52px) 5px;display:grid}.launcher-button{cursor:pointer;background:#fffffff0;border:1px solid #143a1f17;border-radius:19px;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:102px;padding:12px 9px;transition:all .18s;display:flex;box-shadow:0 9px 26px #112d1911}.launcher-button:hover{border-color:#245f3f59;transform:translateY(-3px);box-shadow:0 14px 30px #112d191a}.launcher-button.active{background:linear-gradient(145deg, var(--green), var(--green-dark));color:#fff;border-color:#0000;box-shadow:0 14px 30px #1d523440}.launcher-icon{background:var(--green-soft);width:43px;height:43px;color:var(--green);border-radius:14px;place-items:center;font-size:11px;font-weight:900;display:grid}.launcher-button.active .launcher-icon{color:#fff;background:#ffffff29}.launcher-button strong{font-size:12px}.content{flex:1;width:min(1500px,100%);margin:0 auto;padding:25px clamp(16px,4vw,52px) 50px}.page-heading{justify-content:space-between;align-items:flex-end;gap:20px;min-height:76px;margin-bottom:21px;display:flex}.page-heading h1{font-family:var(--font-geist-sans), Arial, sans-serif;letter-spacing:-.045em;margin:4px 0;font-size:clamp(25px,3vw,34px)}.page-heading p{color:var(--muted);margin:0;font-size:14px}.eyebrow{color:var(--green);letter-spacing:.16em;text-transform:uppercase;font-size:9px;font-weight:900}.primary-button,.secondary-button,.text-button{cursor:pointer;border-radius:11px;justify-content:center;align-items:center;font-weight:800;transition:all .15s;display:inline-flex}.primary-button{background:linear-gradient(145deg, #2c704b, var(--green-dark));color:#fff;border:0;min-height:44px;padding:0 18px;font-size:12px;box-shadow:0 8px 20px #245f3f38}.secondary-button{min-height:42px;color:var(--green-dark);background:#fff;border:1px solid #d6dfd5;padding:0 16px;font-size:12px}.text-button{color:var(--green);background:0 0;border:0;padding:4px 0;font-size:12px}.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}.primary-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.wide{width:100%}.small{min-height:36px;padding:0 12px;font-size:10px}.panel,.dog-strip{border-radius:var(--radius);box-shadow:var(--shadow);background:#fffffff5;border:1px solid #15381e17;padding:23px 24px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:18px;display:flex}.panel-heading h2,.panel-heading h3{letter-spacing:-.025em;margin:4px 0 0;font-size:18px}.panel-heading p{color:var(--muted);margin:4px 0 0}.stat-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:17px;display:grid}.stat-card{text-align:left;min-height:126px;box-shadow:var(--shadow);background:#fff;border:1px solid #15381e17;border-radius:17px;align-items:center;gap:15px;padding:20px;display:flex}button.stat-card{cursor:pointer;transition:all .16s}button.stat-card:hover{transform:translateY(-2px)}.stat-card>span:last-child{flex-direction:column;display:flex}.stat-card small{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:800}.stat-card strong{letter-spacing:-.04em;margin:4px 0 2px;font-size:26px}.stat-card em{color:#748078;font-size:10px;font-style:normal}.stat-icon{background:var(--green-soft);width:47px;height:47px;color:var(--green);border-radius:15px;flex:none;place-items:center;font-size:11px;font-weight:900;display:grid}.dashboard-grid{grid-template-columns:minmax(0,1.45fr) minmax(310px,.75fr);gap:17px;margin-bottom:17px;display:grid}.alert-row{border-top:1px solid #edf0ec;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:69px;display:grid}.alert-row:first-of-type{border-top:0}.alert-row>div{flex-direction:column;display:flex}.alert-row strong{font-size:12px}.alert-row small{color:var(--muted);margin-top:4px;font-size:10px}.alert-icon{border-radius:10px;place-items:center;width:32px;height:32px;font-size:10px;font-weight:900;display:grid}.alert-icon.urgent{background:var(--red-soft);color:var(--red)}.alert-icon.warning{background:var(--amber-soft);color:#966a16}.alert-icon.good{background:var(--green-soft);color:var(--green)}.status-pill{color:#5b675e;white-space:nowrap;background:#edf1ec;border-radius:999px;align-items:center;width:max-content;min-height:24px;padding:0 9px;font-size:9px;font-weight:900;display:inline-flex}.status-pill.compliant,.status-pill.current,.status-pill.active,.status-pill.paid,.status-pill.membership-current,.status-pill.on-file,.status-pill.open{background:var(--green-soft);color:var(--green)}.status-pill.due-soon,.status-pill.renewal-due,.status-pill.due-today,.status-pill.due-sunday,.status-pill.iou{background:var(--amber-soft);color:#8e6313}.status-pill.overdue,.status-pill.unpaid{background:var(--red-soft);color:var(--red)}.status-pill.attending,.status-pill.new,.status-pill.paid-upfront,.status-pill.paid-today{color:var(--blue);background:#e8f1f5}.status-pill.awaiting-reply,.status-pill.not-attending,.status-pill.closed,.status-pill.reviewed{color:#6c766f;background:#edf0ee}.date-badge{background:var(--amber-soft);color:#7e5912;border-radius:9px;align-items:center;min-height:31px;padding:0 11px;font-size:10px;font-weight:900;display:inline-flex}.session-summary{border-top:1px solid #edf0ec;justify-content:space-between;align-items:center;min-height:78px;display:flex}.session-summary:first-of-type{border-top:0}.session-summary>div,.session-summary>span{flex-direction:column;display:flex}.session-summary strong{font-size:13px}.session-summary>span{text-align:right}.session-summary>span strong{color:var(--green);font-size:23px}.session-summary small{color:var(--muted);margin-top:3px;font-size:10px}.recent-panel{padding-top:20px;padding-bottom:20px}.activity-list{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.activity-list>div{align-items:flex-start;gap:9px;display:flex}.activity-list p{flex-direction:column;margin:0;display:flex}.activity-list strong{font-size:11px}.activity-list small{color:var(--muted);margin-top:4px;font-size:9px}.activity-dot{border-radius:50%;flex:none;width:9px;height:9px;margin-top:3px}.activity-dot.green{background:#4f9d68}.activity-dot.amber{background:var(--amber)}.activity-dot.blue{background:#5e91aa}.handler-hero{color:#fff;background:linear-gradient(125deg,#163d29,#2d6f4b);border-radius:23px;justify-content:space-between;align-items:center;gap:25px;min-height:190px;margin-bottom:17px;padding:34px clamp(23px,4vw,44px);display:flex;position:relative;overflow:hidden;box-shadow:0 18px 50px #163c2933}.handler-hero:after{content:"";border:1px solid #ffffff1f;border-radius:50%;width:300px;height:300px;position:absolute;top:-180px;right:10%;box-shadow:0 0 0 45px #ffffff06,0 0 0 95px #ffffff06}.handler-hero>div{z-index:1;position:relative}.handler-hero h2{max-width:650px;font-family:var(--font-geist-sans), Arial, sans-serif;letter-spacing:-.04em;margin:8px 0;font-size:clamp(24px,3vw,35px)}.handler-hero p{color:#d5e4d9;max-width:670px;margin:0;font-size:13px;line-height:1.55}.family-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff24;border-radius:17px;align-items:center;gap:12px;min-width:230px;padding:16px;display:flex}.family-badge>span,.family-badge>img{background:var(--amber);color:#fff;border-radius:14px;flex:0 0 48px;place-items:center;width:48px;height:48px;font-weight:900;display:grid}.family-badge>img{object-fit:cover;border:1px solid #f0bd5980;box-shadow:0 8px 20px #00000047}.family-badge div{flex-direction:column;display:flex}.family-badge strong{font-size:12px}.family-badge small{color:#d5e4d9;margin-top:4px;font-size:9px}.handler-grid{grid-template-columns:1.25fr .75fr;gap:17px;margin-bottom:17px;display:grid}.rsvp-row{border-top:1px solid #edf0ec;grid-template-columns:39px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:78px;display:grid}.rsvp-row>div:nth-child(2),.handler-rsvp>div:nth-child(2){flex-direction:column;display:flex}.rsvp-row strong,.handler-rsvp strong{font-size:12px}.rsvp-row small,.handler-rsvp small{color:var(--muted);margin-top:3px;font-size:9px}.dog-mini{background:var(--green-soft);width:34px;height:34px;color:var(--green);border-radius:11px;place-items:center;font-size:12px;font-weight:900;display:grid}.segmented{background:#eef1ee;border-radius:10px;gap:3px;padding:3px;display:flex}.segmented button{color:#69736c;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:31px;padding:0 9px;font-size:9px;font-weight:900}.segmented .yes.active{background:var(--green);color:#fff}.segmented .no.active{color:var(--red);background:#fff;box-shadow:0 3px 9px #00000012}.homework-summary>p{color:var(--muted);font-size:12px;line-height:1.55}.progress-line{margin:20px 0}.progress-line>span,.submission-progress>span{background:#e8ede8;border-radius:99px;height:7px;display:block;overflow:hidden}.progress-line i,.submission-progress i{border-radius:inherit;background:linear-gradient(90deg, var(--green), #6aa977);height:100%;display:block}.progress-line small,.submission-progress small{color:var(--muted);margin-top:7px;font-size:9px;display:block}.dog-strip{margin-top:0}.dog-strip-grid{grid-template-columns:repeat(2,1fr);gap:15px;display:grid}.family-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.family-card{box-shadow:var(--shadow);background:#fff;border:1px solid #15381e17;border-radius:18px;padding:22px}.family-card-head{grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.family-card-head>div{flex-direction:column;display:flex}.family-card h2{margin:0;font-size:16px}.family-card small{color:var(--muted);margin-top:3px;font-size:9px}.family-mark,.family-big-mark{background:linear-gradient(145deg, var(--green-soft), #d7e9d9);color:var(--green);border-radius:14px;place-items:center;font-weight:900;display:grid}.family-mark{width:48px;height:48px;font-size:12px}.family-counts{background:#f8faf7;border:1px solid #e7ebe6;border-radius:13px;grid-template-columns:repeat(2,1fr);margin:20px 0;display:grid}.family-counts span{flex-direction:column;align-items:center;padding:13px;display:flex}.family-counts span+span{border-left:1px solid #e3e9e2}.family-counts strong{font-size:19px}.family-meta{grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:17px;display:grid}.family-meta span{flex-direction:column;display:flex}.family-meta strong{margin-top:4px;font-size:11px}.good-text{color:var(--green)!important}.bad-text{color:var(--red)!important}.family-profile-head{align-items:center;gap:15px;display:flex}.family-profile-head>div:nth-child(2){flex:1}.family-profile-head h2{margin:0;font-size:24px}.family-profile-head p{color:var(--muted);margin:5px 0 0;font-size:11px}.family-big-mark{width:68px;height:68px;font-size:17px}.family-photo-picker{cursor:pointer;flex:0 0 76px;justify-items:center;gap:6px;width:76px;display:grid;position:relative}.family-photo-picker>img,.family-photo-picker>.family-big-mark{object-fit:cover;border:1px solid #f0bd5973;border-radius:18px;width:68px;height:68px;box-shadow:0 10px 28px #00000047}.family-photo-picker input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.family-photo-picker em{color:var(--amber);font-size:9px;font-style:normal;font-weight:800}.detail-stat-row{background:#f5f8f4;border-radius:15px;grid-template-columns:repeat(3,1fr);margin:24px 0;padding:18px;display:grid}.detail-stat-row div{flex-direction:column;display:flex}.detail-stat-row div+div{border-left:1px solid #dce4dc;padding-left:18px}.detail-stat-row small{color:var(--muted);font-size:9px}.detail-stat-row strong{margin-top:6px;font-size:12px}.section-title{margin:26px 0 12px;font-size:14px}.handler-list{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.handler-list>div{border:1px solid #e3e8e2;border-radius:13px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px;display:grid}.handler-list>div>span:nth-child(2){flex-direction:column;display:flex}.handler-list strong{font-size:11px}.handler-list small{color:var(--muted);margin-top:3px;font-size:8px}.handler-profile-photo{object-fit:cover;border:1px solid #f0bd5961;border-radius:12px;width:38px;height:38px}.handler-photo-actions{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.handler-photo-actions label{color:#dbe9ff;cursor:pointer;background:#188cff1a;border:1px solid #5697ff3d;border-radius:8px;padding:6px 8px;font-size:8px;font-weight:800}.handler-photo-actions input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.dogs-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.dog-card{box-shadow:var(--shadow);background:#fff;border:1px solid #15381e17;border-radius:19px;overflow:hidden}.dog-photo-wrap{background:radial-gradient(circle at 50% 40%,#2e86ff29,#02070ff5);height:215px;position:relative;overflow:hidden}.dog-photo-wrap img{object-fit:contain;width:100%;height:100%;padding:6px;transition:transform .4s}.dog-card:hover .dog-photo-wrap img{transform:scale(1.035)}.dog-photo-wrap .status-pill{position:absolute;top:13px;right:13px;box-shadow:0 5px 13px #0000001f}.dog-card-body{padding:18px}.dog-card-body h2{letter-spacing:-.03em;margin:4px 0;font-size:21px}.dog-card-body>p{color:var(--muted);margin:0;font-size:10px}.dog-card-meta{border-top:1px solid #edf0ec;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:16px;padding-top:14px;display:flex}.dog-card-meta>span{flex-direction:column;display:flex}.dog-card-meta small{color:var(--muted);font-size:8px}.dog-card-meta strong{margin-top:4px;font-size:10px}.dog-card.compact{grid-template-columns:155px minmax(0,1fr);display:grid}.dog-card.compact .dog-photo-wrap{height:auto;min-height:170px}.notice-banner{background:var(--amber-soft);border:1px solid #efd59c;border-radius:15px;align-items:center;gap:12px;margin-bottom:17px;padding:15px 17px;display:flex}.notice-banner>span{background:var(--amber);color:#fff;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.notice-banner>div{flex-direction:column;flex:1;display:flex}.notice-banner strong{font-size:11px}.notice-banner small{color:#80662f;margin-top:3px;font-size:9px}.upload-panel{margin-top:17px}.upload-zone{text-align:center;background:#f7faf6;border:1.5px dashed #b9c9ba;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;min-height:150px;margin-bottom:14px;padding:20px;display:flex;position:relative}.upload-zone input{opacity:0;cursor:pointer;position:absolute;inset:0}.upload-zone strong{margin-top:8px;font-size:11px}.upload-zone small{color:var(--muted);margin-top:4px;font-size:8px}.upload-symbol{background:var(--green-soft);width:38px;height:38px;color:var(--green);border-radius:12px;place-items:center;font-size:20px;font-weight:900;display:grid}.close-small{color:#5c665f;cursor:pointer;background:#edf1ed;border:0;border-radius:10px;width:34px;height:34px;font-size:20px}.table-panel{padding:0;overflow:hidden}.table-panel>.panel-heading{padding:21px 23px 0}.filter-row{border-bottom:1px solid #e7ece6;justify-content:space-between;align-items:center;gap:15px;padding:20px 22px;display:flex}.search-box{color:#768078;background:#f9fbf9;border:1px solid #dce4dc;border-radius:11px;align-items:center;gap:8px;width:min(360px,100%);height:42px;padding:0 13px;display:flex}.search-box input{background:0 0;border:0;outline:0;width:100%;font-size:11px}.chip-row{gap:6px;display:flex}.filter-chip{color:#667168;cursor:pointer;background:#fff;border:1px solid #dfe5de;border-radius:9px;min-height:34px;padding:0 10px;font-size:9px;font-weight:900}.filter-chip.active{border-color:var(--green);background:var(--green);color:#fff}.filter-chip.warning{color:#916618}.filter-chip.danger{color:var(--red)}.table-wrap{width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%}th{color:#737d76;text-align:left;letter-spacing:.06em;text-transform:uppercase;background:#f7f9f6;padding:11px 15px;font-size:8px;font-weight:900}td{border-top:1px solid #e9ede8;padding:13px 15px;font-size:10px}td>strong,td>small{display:block}td>small{color:var(--muted);margin-top:3px;font-size:8px}.table-dog{align-items:center;gap:9px;min-width:150px;display:flex}.table-dog img{object-fit:contain;background:#030914;border-radius:11px;width:38px;height:38px;padding:2px}.table-dog span{flex-direction:column;display:flex}.table-dog small{color:var(--muted);margin-top:3px;font-size:8px}.muted-row{opacity:.58}.assignment-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:17px;display:grid}.assignment-card{box-shadow:var(--shadow);background:#fff;border:1px solid #15381e17;border-radius:18px;padding:23px}.assignment-card.featured{border-top:3px solid var(--green)}.assignment-top{justify-content:space-between;align-items:center;margin-bottom:17px;display:flex}.assignment-icon{background:var(--green-soft);width:45px;height:45px;color:var(--green);border-radius:14px;place-items:center;font-size:11px;font-weight:900;display:grid}.assignment-card h2{margin:6px 0;font-size:20px}.assignment-card p{min-height:38px;color:var(--muted);margin:0;font-size:11px;line-height:1.55}.submission-progress{margin:20px 0}.submission-row{border-top:1px solid #ebefea;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:67px;display:grid}.submission-row>div{flex-direction:column;display:flex}.submission-row strong{font-size:11px}.submission-row small{color:var(--muted);margin-top:4px;font-size:8px}.video-thumb{width:39px;height:39px;color:var(--green);background:#e8f0eb;border-radius:11px;place-items:center;font-size:11px;display:grid}.homework-layout{grid-template-columns:1fr 1fr;gap:17px;display:grid}.large-copy{color:#566159;font-size:12px;line-height:1.7}.steps{margin:21px 0;padding:0;list-style:none}.steps li{border-top:1px solid #e9ede8;align-items:center;gap:11px;min-height:64px;display:flex}.steps li>span{background:var(--green-soft);width:30px;height:30px;color:var(--green);border-radius:10px;place-items:center;font-size:10px;font-weight:900;display:grid}.steps p{flex-direction:column;margin:0;display:flex}.steps strong{font-size:11px}.steps small{color:var(--muted);margin-top:3px;font-size:9px}.assignment-meta{background:#f4f7f3;border-radius:12px;grid-template-columns:repeat(2,1fr);padding:14px;display:grid}.assignment-meta span{flex-direction:column;display:flex}.assignment-meta small{color:var(--muted);font-size:8px}.assignment-meta strong{margin-top:4px;font-size:10px}.video-drop{text-align:center;cursor:pointer;background:#f6faf6;border:1.5px dashed #b7c8b8;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-height:195px;margin-bottom:16px;padding:20px;display:flex;position:relative}.video-drop input{opacity:0;cursor:pointer;position:absolute;inset:0}.camera-icon{border:2px solid var(--green);width:48px;height:48px;color:var(--green);border-radius:15px;place-items:center;font-size:21px;display:grid}.video-drop strong{margin-top:11px;font-size:12px}.video-drop small{color:var(--muted);margin-top:5px;font-size:9px}.video-drop em{color:var(--green);margin-top:13px;font-size:9px;font-style:normal;font-weight:800}.video-preview{background:#101713;border-radius:15px;width:100%;max-height:280px;margin-bottom:10px}.selected-file{border:1px solid #dfe6de;border-radius:12px;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:9px;margin-bottom:14px;padding:10px;display:grid}.selected-file>span{background:var(--green-soft);width:32px;height:32px;color:var(--green);border-radius:9px;place-items:center;display:grid}.selected-file>div{flex-direction:column;display:flex}.selected-file strong{font-size:10px}.selected-file small{color:var(--muted);margin-top:2px;font-size:8px}.field-label{color:#4f5a52;flex-direction:column;gap:6px;margin-bottom:13px;font-size:9px;font-weight:900;display:flex}.field-label input,.field-label select,.field-label textarea{width:100%;min-height:43px;color:var(--ink);background:#fff;border:1px solid #d9e1d8;border-radius:10px;padding:9px 11px;font-size:11px;font-weight:500}.field-label textarea{resize:vertical;min-height:75px}.session-tabs{gap:10px;margin-bottom:14px;display:flex}.session-tabs button{cursor:pointer;background:#fff;border:1px solid #dbe3da;border-radius:14px;flex-direction:column;align-items:flex-start;min-width:230px;min-height:66px;padding:11px 15px;display:flex}.session-tabs button.active{border-color:var(--green);background:var(--green);color:#fff;box-shadow:0 10px 22px #245f3f2e}.session-tabs strong{font-size:12px}.session-tabs small{color:var(--muted);margin-top:4px;font-size:8px}.session-tabs button.active small{color:#d9eadc}.attendance-panel{padding:0;overflow:hidden}.register-heading{justify-content:space-between;align-items:center;gap:20px;padding:22px 23px;display:flex}.register-heading h2{margin:5px 0 4px;font-size:19px}.register-heading p{color:var(--muted);margin:0;font-size:10px}.register-counts{gap:5px;display:flex}.register-counts span{background:#f2f6f1;border-radius:11px;flex-direction:column;align-items:center;min-width:75px;padding:10px;display:flex}.register-counts strong{color:var(--green);font-size:18px}.register-counts small{color:var(--muted);text-transform:uppercase;margin-top:2px;font-size:7px}.check-button{color:#fff;cursor:pointer;background:#fff;border:1.5px solid #cfd8cf;border-radius:10px;width:35px;height:35px;font-size:17px;font-weight:900}.check-button.checked{border-color:var(--green);background:var(--green)}.weekend-rsvp-grid{grid-template-columns:repeat(2,1fr);gap:17px;display:grid}.day-date{justify-content:space-between;align-items:center;display:flex}.day-date>strong{font-size:20px}.day-date>span{background:var(--green);color:#fff;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;width:55px;height:55px;font-size:20px;font-weight:900;display:flex}.day-date small{text-transform:uppercase;font-size:7px}.day-rsvp>p{color:var(--muted);margin:-7px 0 17px;font-size:10px}.handler-rsvp{border-top:1px solid #e9ede8;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:73px;display:grid}.attendance-note{color:var(--muted);text-align:center;background:#f4f7f3;border-radius:10px;margin-top:14px;padding:10px;font-size:8px}.empty-family-state{color:var(--muted);text-align:center;background:#f7faf6;border:1px dashed #cad6ca;border-radius:12px;margin:14px 0;padding:18px;font-size:10px}.payment-stats{grid-template-columns:repeat(3,1fr)}.fee-banner{box-shadow:var(--shadow);background:linear-gradient(120deg,#eff7ef,#fbfdf9);border:1px solid #d8e5d8;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:15px;padding:17px 19px;display:flex}.fee-banner>div{flex-direction:column;display:flex}.fee-banner strong{color:var(--green-dark);margin-top:5px;font-size:15px}.fee-banner small{color:var(--muted);margin-top:4px;font-size:10px}.warn-card{border-top:3px solid var(--amber)}.payment-summary-grid{grid-template-columns:1.35fr .65fr;gap:17px;margin-bottom:17px;display:grid}.membership-top{align-items:center;gap:14px;min-height:90px;display:flex}.membership-check{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:50px;height:50px;font-size:23px;font-weight:900;display:grid}.membership-top h2{margin:0;font-size:19px}.membership-top p{color:var(--muted);margin:5px 0 0;font-size:10px}.payment-line{background:#f4f7f3;border-radius:12px;grid-template-columns:repeat(2,1fr);padding:13px;display:grid}.payment-line span{flex-direction:column;display:flex}.payment-line small{color:var(--muted);font-size:8px}.payment-line strong{margin-top:4px;font-size:11px}.balance-total{color:var(--red);letter-spacing:-.05em;margin:13px 0 2px;font-size:35px;display:block}.balance-card>p{color:var(--muted);margin:0 0 21px;font-size:10px}.drawer-backdrop,.modal-backdrop{z-index:90;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0c171085;justify-content:flex-end;display:flex;position:fixed;inset:0}.dog-drawer{background:#f5f7f4;width:min(620px,100%);height:100%;padding:23px;animation:.22s ease-out slideIn;position:relative;overflow-y:auto;box-shadow:-20px 0 60px #0003}@keyframes slideIn{0%{opacity:.4;transform:translate(50px)}}.drawer-close{z-index:2;width:40px;height:40px;color:var(--ink);cursor:pointer;background:#ffffffe6;border:0;border-radius:12px;font-size:23px;position:absolute;top:17px;right:17px}.drawer-hero{box-shadow:var(--shadow);background:#fff;border-radius:19px;grid-template-columns:170px minmax(0,1fr);align-items:center;gap:18px;padding:17px;display:grid}.drawer-hero img{object-fit:contain;background:radial-gradient(circle at 50% 40%,#2e86ff29,#02070ff5);border-radius:15px;width:170px;height:160px;padding:6px}.drawer-hero h2{letter-spacing:-.05em;margin:5px 0;font-size:30px}.drawer-hero p{color:var(--muted);margin:0 0 12px;font-size:10px}.drawer-facts{box-shadow:var(--shadow);background:#fff;border-radius:15px;grid-template-columns:repeat(3,1fr);margin:14px 0;padding:16px;display:grid}.drawer-facts span{flex-direction:column;display:flex}.drawer-facts small{color:var(--muted);font-size:8px}.drawer-facts strong{margin-top:5px;font-size:10px}.drawer-section{box-shadow:var(--shadow);background:#fff;border-radius:17px;margin-top:14px;padding:20px}.document-row{border-top:1px solid #e9ede8;grid-template-columns:39px minmax(0,1fr) auto auto;align-items:center;gap:9px;min-height:64px;display:grid}.document-row>div{flex-direction:column;display:flex}.document-row strong{font-size:10px}.document-row small{color:var(--muted);margin-top:3px;font-size:8px}.document-icon{background:var(--green-soft);width:36px;height:36px;color:var(--green);border-radius:10px;place-items:center;font-size:8px;font-weight:900;display:grid}.compact-upload{min-height:118px;margin-top:11px}.drawer-actions{justify-content:flex-end;gap:8px;display:flex}.modal-backdrop{justify-content:center;align-items:center;padding:18px}.simple-modal{background:#fff;border-radius:20px;width:min(560px,100%);max-height:calc(100vh - 36px);padding:24px;overflow-y:auto;box-shadow:0 30px 90px #0000004d}.modal-fields{grid-template-columns:repeat(2,1fr);gap:0 12px;display:grid}.modal-fields .field-label:nth-child(odd):last-child{grid-column:1/-1}.modal-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.handler-admin-heading{padding-right:23px!important}.handler-admin-heading p{max-width:680px;font-size:10px;line-height:1.5}.table-person{align-items:center;gap:9px;min-width:150px;display:flex}.table-person>span:last-child{flex-direction:column;display:flex}.table-person strong{font-size:10px}.table-person small{color:var(--muted);margin-top:3px;font-size:8px}.account-actions{align-items:center;gap:11px;min-width:230px;display:flex}.security-explainer{color:var(--green-dark);background:#f0f6ef;border-radius:13px;align-items:flex-start;gap:11px;margin:18px 22px 22px;padding:14px 16px;display:flex}.security-explainer>span,.secure-invite-note>span{background:var(--green);color:#fff;border-radius:9px;flex:none;place-items:center;width:29px;height:29px;font-weight:900;display:grid}.security-explainer>div{flex-direction:column;display:flex}.security-explainer strong{font-size:10px}.security-explainer small{color:var(--muted);margin-top:4px;font-size:8px;line-height:1.5}.fee-modal{width:min(620px,100%)}.fee-field-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.money-input{background:#fff;border:1px solid #d9e1d8;border-radius:11px;grid-template-columns:42px 1fr;align-items:center;display:grid;overflow:hidden}.money-input b{height:48px;color:var(--green);background:#f3f7f2;border-right:1px solid #d9e1d8;place-items:center;font-size:13px;display:grid}.money-input input{border:0;border-radius:0;min-height:48px;font-size:16px;font-weight:800}.fee-example{background:var(--amber-soft);border-radius:11px;margin:3px 0 17px;padding:13px}.fee-example span{color:#8e6313;text-transform:uppercase;font-size:8px;font-weight:900}.fee-example p{color:#6e582d;margin:4px 0 0;font-size:10px}.secure-invite-note{background:#f0f6ef;border-radius:12px;align-items:flex-start;gap:10px;margin:2px 0 17px;padding:13px;display:flex}.secure-invite-note p{flex-direction:column;margin:0;display:flex}.secure-invite-note strong{color:var(--green-dark);font-size:10px}.secure-invite-note small{color:var(--muted);margin-top:3px;font-size:8px;line-height:1.45}.training-activation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.activation-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:15px;justify-content:space-between;align-items:center;gap:16px;padding:17px 18px;display:flex}.activation-info{flex-direction:column;gap:4px;display:flex}.activation-info strong{color:var(--ink);font-size:14px}.activation-info small{color:var(--muted);font-size:9px}.toggle-switch{min-width:112px;color:var(--muted);cursor:pointer;background:#edf0ed;border:1px solid #d5ddd6;border-radius:999px;align-items:center;gap:8px;padding:6px 10px 6px 7px;display:flex}.toggle-knob{background:#9ca59e;border-radius:50%;width:20px;height:20px;box-shadow:0 2px 5px #00000024}.toggle-switch em{font-size:9px;font-style:normal;font-weight:900}.training-off-notice{color:var(--muted);background:#f5f7f5;border:1px dashed #ccd5cd;border-radius:12px;align-items:flex-start;gap:11px;margin-top:15px;padding:16px;display:flex}.training-off-notice span{background:#e5e9e5;border-radius:9px;flex:none;place-items:center;width:29px;height:29px;font-weight:900;display:grid}.training-off-notice div{flex-direction:column;gap:3px;display:flex}.training-off-notice strong{color:var(--ink);font-size:10px}.training-off-notice small{font-size:8px;line-height:1.45}.payment-status-select{min-width:145px;min-height:35px;color:var(--ink);background:#fff;border:1px solid #cdd8ce;border-radius:9px;padding:0 30px 0 10px;font-size:9px;font-weight:800}.payment-awaiting{color:var(--muted);font-size:9px;font-style:italic}.attendance-action{color:#b9c9df;cursor:pointer;background:#0c1627b8;border:1px solid #5697ff42;border-radius:10px;min-width:112px;min-height:36px;padding:0 12px;font-size:9px;font-weight:900}.attendance-action.checked{color:#fff;background:linear-gradient(135deg,#168dff,#06458f);border-color:#f0bd5973;box-shadow:0 8px 20px #095bcd40}.attendance-history{margin-top:17px}.status-pill.attended{color:#72c5ff;background:#188cff26}.status-pill.training-active,.status-pill.payment-received,.status-pill.free-session{color:#27683a;background:#e5f3e8}.status-pill.not-active{color:#687069;background:#edf0ed}.status-pill.still-owing{color:#9a5815;background:#fff0df}.toast{z-index:120;background:var(--green-dark);color:#fff;border-radius:12px;padding:12px 17px;font-size:11px;font-weight:800;animation:.18s ease-out toastIn;position:fixed;top:96px;left:50%;transform:translate(-50%);box-shadow:0 14px 35px #0003}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,-10px)}}.footer{color:#78817b;background:#ffffffb3;border-top:1px solid #13341d12;justify-content:center;align-items:center;gap:9px;min-height:58px;padding:10px 30px;font-size:9px;display:flex}.footer strong{color:var(--ink)}.footer-mark{background:var(--green);color:#fff;border-radius:8px;place-items:center;width:28px;height:28px;font-family:Georgia,serif;font-size:8px;font-weight:900;display:grid}.login-page{background:#0c1710;place-items:center;min-height:100vh;padding:24px;display:grid;position:relative;overflow:hidden}.login-backdrop{background:radial-gradient(circle at 18% 20%,#4d925c40,#0000 28%),linear-gradient(145deg,#08110b,#173222 65%,#0c1911);position:absolute;inset:0;overflow:hidden}.kennel-lines{border:1px solid #ffffff14;border-radius:50%;width:460px;height:460px;position:absolute;bottom:-140px;right:-70px;box-shadow:0 0 0 70px #ffffff06,0 0 0 140px #ffffff05}.glow{filter:blur(3px);border-radius:50%;position:absolute}.glow-one{background:#d59a2e26;width:170px;height:170px;top:10%;right:18%}.glow-two{background:#366e472b;width:230px;height:230px;bottom:6%;left:9%}.login-card{z-index:1;background:#fffffff5;border:1px solid #ffffff1a;border-radius:25px;width:min(440px,100%);padding:31px;position:relative;box-shadow:0 30px 100px #0000006b}.login-brand{cursor:default;margin-bottom:27px}.login-copy h1{letter-spacing:-.045em;margin:7px 0 6px;font-size:27px}.login-copy p{color:var(--muted);margin:0;font-size:11px}.role-tabs{background:#edf1ec;border-radius:12px;grid-template-columns:repeat(2,1fr);margin:22px 0 17px;padding:4px;display:grid}.role-tabs button{min-height:39px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;font-size:10px;font-weight:900}.role-tabs button.active{color:var(--green-dark);background:#fff;box-shadow:0 4px 14px #00000014}.login-form label{color:#526057;flex-direction:column;gap:6px;margin-bottom:12px;font-size:9px;font-weight:900;display:flex}.login-form input{border:1px solid #d8e1d8;border-radius:11px;min-height:46px;padding:0 12px;font-size:11px}.login-form .primary-button{margin-top:5px}.secure-note{color:var(--muted);text-align:center;margin:18px 0 0;font-size:9px}.secure-note span{color:var(--green);font-weight:900}@media (max-width:1120px){.launcher{grid-template-columns:repeat(4,1fr)}.stat-grid,.dogs-grid{grid-template-columns:repeat(2,1fr)}.payment-stats{grid-template-columns:repeat(3,1fr)}.view-switch{display:none}}@media (max-width:760px){.topbar{min-height:70px;padding:10px 13px}.brand-mark{border-radius:12px;width:43px;height:43px;font-size:16px}.brand-lockup strong{font-size:15px}.brand-lockup small,.user-summary{display:none}.logout-button{min-height:40px;padding:0 12px}.launcher{scrollbar-width:none;gap:8px;padding:14px 12px 4px;display:flex;overflow-x:auto}.launcher::-webkit-scrollbar{display:none}.launcher-button{border-radius:15px;min-width:94px;min-height:88px}.launcher-icon{border-radius:11px;width:36px;height:36px}.content{padding:18px 12px 35px}.page-heading{flex-direction:column;align-items:flex-start;min-height:65px}.page-heading .primary-button{width:100%}.stat-grid,.dashboard-grid,.handler-grid,.family-grid,.dogs-grid,.assignment-grid,.homework-layout,.weekend-rsvp-grid,.payment-summary-grid,.handler-list,.payment-stats,.activity-list{grid-template-columns:1fr}.handler-hero{flex-direction:column;align-items:flex-start;padding:25px 22px}.family-badge{width:100%;min-width:0}.dog-strip-grid{grid-template-columns:1fr}.dog-card.compact{grid-template-columns:115px minmax(0,1fr)}.filter-row{flex-direction:column;align-items:stretch}.chip-row{overflow-x:auto}.register-heading{flex-direction:column;align-items:flex-start}.register-counts{width:100%}.register-counts span,.session-tabs button{flex:1;min-width:0}.notice-banner{flex-wrap:wrap;align-items:flex-start}.notice-banner .secondary-button{width:100%}.drawer-hero{grid-template-columns:105px minmax(0,1fr)}.drawer-hero img{width:105px;height:130px}.drawer-facts,.detail-stat-row{grid-template-columns:1fr;gap:11px}.drawer-facts span,.detail-stat-row div+div{border:0;padding:0}.document-row{grid-template-columns:36px minmax(0,1fr) auto}.document-row .text-button{grid-column:2/-1;justify-self:start}.drawer-actions{flex-direction:column}.modal-fields,.fee-field-grid{grid-template-columns:1fr}.fee-banner{flex-direction:column;align-items:stretch}.training-activation-grid{grid-template-columns:1fr}.modal-fields .field-label{grid-column:auto!important}.footer span:last-child{display:none}.rsvp-row,.handler-rsvp{grid-template-columns:36px minmax(0,1fr);padding:10px 0}.rsvp-row .segmented,.handler-rsvp .segmented{grid-column:1/-1}}@media (max-width:430px){.stat-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card{flex-direction:column;align-items:flex-start;min-height:130px;padding:14px}.stat-card strong{font-size:22px}.stat-icon{width:38px;height:38px}.panel,.dog-strip{padding:18px 15px}.alert-row{grid-template-columns:35px minmax(0,1fr);padding:8px 0}.alert-row .status-pill{grid-column:2}.dog-photo-wrap{height:195px}.dog-card.compact{display:block}.dog-card.compact .dog-photo-wrap{height:170px}.family-profile-head{flex-wrap:wrap;align-items:flex-start}.family-profile-head .status-pill{margin-left:83px}.login-card{padding:25px 20px}}.login-page:has(.login-reels){flex-direction:column;justify-content:flex-start;align-items:center;gap:22px;display:flex;overflow-y:auto}.login-reels{z-index:1;-webkit-backdrop-filter:blur(24px)saturate(140%);backdrop-filter:blur(24px)saturate(140%);background:linear-gradient(145deg,#081222e6,#030812d1);border:1px solid #5ba4ff33;border-radius:28px;width:min(1080px,100%);padding:clamp(18px,3vw,28px);position:relative;overflow:hidden;box-shadow:0 30px 90px #0000006b,inset 0 1px #ffffff0e}.login-reels:before{content:"";z-index:-1;background:radial-gradient(circle,#eeb43e33,#0000 68%);border-radius:50%;width:260px;height:260px;position:absolute;top:-150px;right:-130px}.login-reels-heading{justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px;display:flex}.login-reels-heading h2{color:#fff;letter-spacing:-.045em;margin:7px 0 4px;font-size:clamp(24px,3vw,34px)}.login-reels-heading p,.login-reels-note{color:#8fa0b7;margin:0;font-size:14px;line-height:1.55}.login-reels-kicker{color:#efbd57;letter-spacing:.14em;align-items:center;gap:8px;font-size:11px;font-weight:900;display:inline-flex}.login-reels-kicker i{background:#2f91ff;border-radius:50%;width:7px;height:7px;box-shadow:0 0 14px #2f91ff}.login-reels-heading>a{color:#f6cc70;background:linear-gradient(135deg,#f0bd591c,#2f91ff1a);border:1px solid #f0bd5957;border-radius:14px;flex:none;align-items:center;gap:8px;min-height:46px;padding:0 16px;font-size:13px;font-weight:850;text-decoration:none;display:inline-flex}.facebook-reels-gallery{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-color:#3c96ff8c #ffffff0a;grid-auto-columns:245px;grid-auto-flow:column;gap:16px;margin:0 -4px;padding:4px 4px 13px;display:grid;overflow-x:auto}.facebook-reel-card{scroll-snap-align:start;color:#fff;background:linear-gradient(155deg,#0b192ef0,#02060dfa);border:1px solid #5ea4ff38;border-radius:22px;gap:5px;min-width:0;padding:12px;text-decoration:none;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 55px #0000006b}.facebook-reel-card:after{content:"";pointer-events:none;background:radial-gradient(circle,#ebb13738,#0000 68%);height:65%;position:absolute;inset:auto -25% -45% 25%}.facebook-reel-number{color:#eabd5f;letter-spacing:.14em;align-items:center;height:28px;padding:0 3px;font-size:10px;font-weight:900;display:flex}.facebook-reel-art{background:radial-gradient(circle at 50% 34%,#2185ff45,#0000 44%),linear-gradient(155deg,#07152c,#02050b 66%);border-radius:16px;place-items:center;height:285px;display:grid;position:relative;overflow:hidden}.facebook-reel-art:before{content:"";opacity:.18;background-image:linear-gradient(#4b9eff2b 1px,#0000 1px),linear-gradient(90deg,#4b9eff2b 1px,#0000 1px);background-size:26px 26px;position:absolute;inset:0}.facebook-reel-art img{object-fit:cover;width:100%;height:100%;position:relative}.facebook-reel-art.has-preview:after{content:"";pointer-events:none;background:linear-gradient(#0000 56%,#0000007a);position:absolute;inset:0}.facebook-reel-placeholder{color:#8fa0b7;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:850;position:relative}.facebook-reel-art i{color:#08111e;background:linear-gradient(135deg,#ffe28c,#e7a52e 58%,#4aa5ff);border:1px solid #ffd877a3;border-radius:50%;place-items:center;width:64px;height:64px;padding-left:5px;font:23px/1 inherit;display:grid;position:absolute;box-shadow:0 12px 35px #0000007a,0 0 30px #3493ff52}.facebook-reel-card>strong{margin-top:7px;font-size:15px}.facebook-reel-card>small{color:#8fa0b7;font-size:12px}.facebook-reel-card:focus-visible{outline-offset:3px;outline:3px solid #4aa5ffb3}.login-reels-note{text-align:center;margin-top:13px;font-size:12px}.dashboard-reels{width:100%;margin-top:24px}@media (max-width:760px){.login-page:has(.login-reels){padding-bottom:max(16px, env(safe-area-inset-bottom));gap:12px}.login-reels{border-radius:22px;width:calc(100% - 20px);padding:16px 12px}.login-reels-heading{flex-direction:column;align-items:stretch}.login-reels-heading>a{justify-content:center;width:100%}.facebook-reels-gallery{grid-auto-columns:min(245px,100vw - 60px);gap:11px}.facebook-reel-card{border-radius:18px}.facebook-reel-art{height:280px}}@media (max-width:430px){.login-page:has(.login-reels){padding-bottom:max(12px, env(safe-area-inset-bottom))}.login-page:has(.login-reels) .login-stage{flex:none;min-height:100dvh}.login-reels{width:calc(100% - 16px)}.facebook-reels-gallery{grid-auto-columns:calc(100vw - 56px)}}.login-stage{isolation:isolate;border-radius:30px}.login-stage:before{content:"";z-index:3;pointer-events:none;border-radius:inherit;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff09}.login-showcase:before{content:"JK";color:#549fff06;letter-spacing:-.12em;font-size:210px;font-weight:950;position:absolute;top:44%;right:-18px;transform:rotate(-90deg)}.logo-halo{background:radial-gradient(circle,#1053ae4d,#020812cc 70%);border:1px solid #6db2ff33;border-radius:50%;width:270px;height:270px;margin:2px auto 12px;overflow:hidden;box-shadow:0 28px 70px #00000080,0 0 80px #1f7cff21,inset 0 1px #ffffff14}.logo-halo:before{z-index:0;inset:-18%}.logo-halo img{z-index:1;object-fit:initial;mix-blend-mode:normal;width:100%;height:auto;position:relative;transform:translateY(-2%)}.shield-orbit{z-index:2;pointer-events:none;border:1px solid #e9b84f33;border-radius:50%;position:absolute;inset:12px}.shield-orbit:before,.shield-orbit:after{content:"";background:#e8b650;border-radius:50%;width:7px;height:7px;position:absolute;box-shadow:0 0 18px #e8b650}.shield-orbit:before{top:34px;left:23px}.shield-orbit:after{background:#3c9cff;bottom:39px;right:19px;box-shadow:0 0 18px #3c9cff}.showcase-copy{padding-top:4px}.showcase-copy h2{max-width:540px;font-size:clamp(38px,4.2vw,58px)}.showcase-copy p{max-width:420px}.login-card{padding-inline:clamp(42px,5vw,72px)}.login-card:after{content:"";border:1px solid #3a99ff1a;border-radius:50%;width:190px;height:190px;position:absolute;top:-95px;right:-95px;box-shadow:0 0 0 35px #3a99ff05,0 0 0 70px #e8b65003}.login-copy,.login-form,.secure-note,.login-brand{z-index:1;position:relative}.login-copy h1{max-width:390px}.login-field>span{align-items:center;display:flex;position:relative}.login-field>span>i{z-index:2;color:#6eb3ff;background:#3785ee14;border:1px solid #5da5ff2e;border-radius:10px;place-items:center;width:34px;height:34px;font-size:9px;font-style:normal;font-weight:950;display:grid;position:absolute;left:12px}.login-field input{width:100%;padding-left:58px}.login-field input::placeholder{color:#526177}.login-form .primary-button{position:relative;overflow:hidden}.login-form .primary-button:after{content:"";filter:blur(14px);background:#ffffff2e;width:70px;height:180%;transition:left .45s;position:absolute;top:-40%;left:-110px;transform:rotate(20deg)}.login-form .primary-button:hover:after{left:calc(100% + 30px)}@media (max-width:900px){.login-showcase:before{display:none}.logo-halo{width:150px;height:150px;margin:-6px auto -24px}.showcase-copy{z-index:3}.login-card{padding-inline:34px}}@media (max-width:430px){.login-stage{border-radius:0}.login-showcase{min-height:235px}.logo-halo{width:118px;height:118px;margin:-4px auto -17px}.showcase-copy h2{font-size:27px}.login-card{padding-inline:22px}.login-card:after{display:none}}.login-page{min-height:100dvh;padding:clamp(14px,2.5vw,34px)}.login-backdrop:after{content:"";background:linear-gradient(115deg,#0000 40%,#ffffff06 50%,#0000 60%);position:absolute;inset:0}.login-stage{background:#040a14bd;border-color:#73b1ff33;border-radius:36px;grid-template-columns:minmax(0,1.14fr) minmax(420px,.86fr);width:min(1180px,100%);min-height:min(720px,100dvh - 40px);box-shadow:0 50px 160px #000000ad,inset 0 0 0 1px #ffffff06}.login-showcase{background:radial-gradient(circle at 50% 24%,#1477ff33,#0000 35%),linear-gradient(155deg,#050e1eb8,#01050ce6);border-right-color:#6faeff24;padding:clamp(28px,4vw,52px)}.logo-halo{aspect-ratio:auto;width:min(280px,58%);height:clamp(310px,40vh,350px);margin:-10px auto 4px}.logo-halo:before{background:radial-gradient(circle,#197eff61,#e3a42621 45%,#0000 69%);inset:12% 2%}.logo-halo img{object-fit:contain}.showcase-copy>span{letter-spacing:.18em;background:#f0bd590f;border:1px solid #f0bd5938;border-radius:999px;align-items:center;min-height:28px;padding:0 11px;font-size:9px;display:inline-flex}.showcase-copy h2{margin:16px 0 12px;font-size:clamp(36px,4.3vw,56px);line-height:.98}.showcase-copy h2 em{color:#76b8ff;text-shadow:0 0 30px #268bff40;font-style:normal}.showcase-copy p{font-size:13px}.showcase-stats{border-top:1px solid #72adf71f;margin-top:30px;padding-top:22px}.showcase-stats strong{font-size:24px}.login-card{background:linear-gradient(160deg,#0b1627e6,#050c18c7);padding:clamp(38px,5vw,66px);position:relative}.login-card:before{content:"";background:linear-gradient(#0000,#dbac4e,#3e9bff,#0000);width:1px;height:38%;position:absolute;top:31%;left:0;box-shadow:0 0 22px #3e9bff73}.login-brand .brand-mark{border-radius:17px;width:58px;height:58px;box-shadow:0 14px 35px #0006,0 0 0 1px #f0bd5933}.login-brand strong{font-size:17px}.login-brand small{color:#77b8ff;letter-spacing:.16em}.login-kicker{color:#e9bc5d;letter-spacing:.16em;align-items:center;gap:9px;font-size:9px;font-weight:900;display:inline-flex}.login-kicker i{background:#3d9cff;border-radius:50%;width:7px;height:7px;box-shadow:0 0 15px #3d9cff}.login-copy h1{letter-spacing:-.055em;margin:16px 0 10px;font-size:clamp(34px,3.3vw,46px);line-height:1.02}.login-copy p{font-size:12px;line-height:1.65}.login-form{margin-top:34px}.login-form label{color:#c2cde0;letter-spacing:.04em;gap:9px;margin-bottom:17px;font-size:10px}.login-form input{background:#020812b3;border-color:#6faeff3d;border-radius:15px;min-height:58px;padding:0 18px;font-size:14px;transition:border-color .2s,box-shadow .2s,transform .2s}.login-form input:focus{border-color:#54a3ffbf;outline:none;transform:translateY(-1px);box-shadow:0 0 0 4px #2b84ff1c,0 12px 35px #0000002e}.login-form .primary-button{letter-spacing:.025em;background:linear-gradient(135deg,#2f91ff,#1749b8);border:1px solid #7ebbff6b;border-radius:15px;min-height:58px;margin-top:5px;font-size:12px;box-shadow:0 16px 38px #125bd647,inset 0 1px #ffffff2e}.login-form .primary-button:hover{transform:translateY(-2px);box-shadow:0 20px 44px #125bd666,inset 0 1px #ffffff38}.secure-note{text-align:center;margin-top:22px;font-size:9px}.secure-note span{color:#4ba5ff}@media (max-width:900px){.login-stage{grid-template-columns:1fr;width:min(560px,100%);min-height:0}.login-showcase{border-bottom:1px solid #5697ff24;border-right:0;min-height:300px;padding:25px 28px}.logo-halo{width:175px;height:205px;margin:-25px auto -65px}.showcase-copy h2{margin:10px 0 5px;font-size:30px}.showcase-copy p,.showcase-stats{display:none}.login-card{padding:34px 34px 32px}.login-card:before{background:linear-gradient(90deg,#0000,#dbac4e,#3e9bff,#0000);width:38%;height:1px;top:0;left:31%}.login-brand{display:none}}@media (max-width:430px){body:has(.login-page){padding-bottom:0}.login-page{padding:0}.login-stage{border:0;border-radius:0;width:100%;min-height:100dvh;margin:0}.login-showcase{min-height:245px;padding:18px 20px}.logo-halo{width:132px;height:145px;margin:-12px auto -32px}.showcase-copy>span{min-height:25px;font-size:7px}.showcase-copy h2{font-size:27px}.login-card{padding:30px 22px calc(28px + env(safe-area-inset-bottom));justify-content:flex-start}.login-copy h1{margin-top:13px;font-size:34px}.login-form{margin-top:25px}.login-form input,.login-form .primary-button{min-height:54px}}:root{--ink:#f7f9ff;--muted:#9eabc1;--line:#5697ff2e;--paper:#0c1424c7;--canvas:#03060c;--green:#188cff;--green-dark:#0666c7;--green-soft:#188cff21;--amber:#f0bd59;--amber-soft:#f0bd5921;--red:#ff6878;--red-soft:#ff687821;--blue:#58b7ff;--shadow:0 24px 65px #00000052, inset 0 1px 0 #ffffff0b}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#03060c}body{background-color:#0000;background-image:radial-gradient(circle at 8% 4%,#1170ff2b,#0000 28%),radial-gradient(circle at 88% 12%,#f0bd591a,#0000 23%),linear-gradient(145deg,#02050a,#07101e 52%,#02050a);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-height:100vh}:is(button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible){outline-color:#56afffa6}.portal-shell{background:linear-gradient(#03060c33,#03060cc7)}.topbar{-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%);background:#040911b8;border-color:#f0bd5929;box-shadow:0 12px 40px #00000047}.brand-mark{background:#03050a;border:1px solid #f0bd597a;overflow:hidden;box-shadow:0 0 0 3px #188cff14,0 10px 28px #00000073}.brand-mark img{object-fit:cover;width:100%;height:100%}.brand-lockup small{color:#7fa8d5}.view-switch,.role-tabs,.segmented{background:#050b15b8;border:1px solid #5697ff26}.view-switch button.active,.role-tabs button.active{color:#fff;background:linear-gradient(135deg,#188cffe6,#0c469ae0);box-shadow:0 8px 22px #188cff38,inset 0 1px #ffffff38}.person-avatar{color:var(--amber);background:#f0bd591f;border:1px solid #f0bd594d}.logout-button,.primary-button{background:linear-gradient(135deg,#1a8efff2,#08439af5);border:1px solid #54acff73;box-shadow:0 10px 28px #095bcd45,inset 0 1px #ffffff3d}.logout-button:hover,.primary-button:hover{border-color:#f0bd59a6;box-shadow:0 14px 34px #095bcd59,0 0 18px #f0bd5914}.secondary-button,.filter-chip,.check-button,.session-tabs button{color:#dbe9ff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0c1627b8;border-color:#5697ff38;box-shadow:inset 0 1px #ffffff0d}.text-button,.eyebrow{color:var(--amber)}.launcher-button{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(145deg,#0b1424c7,#050b15b8);border-color:#5697ff26}.launcher-button:hover{border-color:#f0bd596b;box-shadow:0 16px 38px #0006,0 0 24px #1e7fff14}.launcher-button.active{background:linear-gradient(145deg,#1275ebeb,#062657f0);border-color:#f0bd597a;box-shadow:0 18px 38px #034aab57,inset 0 1px #ffffff2e}.launcher-icon,.stat-icon,.assignment-icon,.dog-mini,.document-icon,.upload-symbol,.selected-file>span,.steps li>span{color:#69c1ff;background:#188cff1f;border:1px solid #439dff33}.launcher-button.active .launcher-icon{background:#ffffff1a;border-color:#ffffff2e}.panel,.dog-strip,.stat-card,.family-card,.dog-card,.assignment-card,.activation-card,.fee-banner{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px)saturate(135%);backdrop-filter:blur(22px)saturate(135%);background:linear-gradient(145deg,#0d1729c7,#060c17ba);border-color:#5697ff29}.panel:hover,.stat-card:hover,.family-card:hover,.dog-card:hover{border-color:#5697ff45}.handler-hero{background:radial-gradient(circle at 85% 10%,#f0bd592e,#0000 28%),linear-gradient(125deg,#0b56b5eb,#030a16f2);border:1px solid #f0bd5947;box-shadow:0 24px 60px #00000061}.handler-hero .eyebrow{color:#ffd67e}.handler-hero p,.family-badge small{color:#b9c9df}.family-badge{background:#040c1a61;border-color:#ffffff21}.family-badge>span{color:#111;background:linear-gradient(145deg,#ffd575,#b97712)}.family-mark,.family-big-mark{color:var(--amber);background:linear-gradient(145deg,#f0bd592e,#188cff1a);border:1px solid #f0bd5940}.family-counts,.detail-stat-row,.assignment-meta,.payment-line,.attendance-note,.register-counts span,.training-off-notice,.empty-family-state,.upload-zone,.video-drop,.security-explainer,.secure-invite-note,.fee-example{background:#050c1894;border-color:#5697ff24}.alert-row,.session-summary,.rsvp-row,.handler-rsvp,.document-row,.submission-row,td,.dog-card-meta{border-color:#5697ff1c}.status-pill{color:#b8c4d5;background:#7a91ad24;border:1px solid #ffffff0f}.status-pill.compliant,.status-pill.current,.status-pill.active,.status-pill.paid,.status-pill.membership-current,.status-pill.on-file,.status-pill.open,.status-pill.training-active,.status-pill.payment-received,.status-pill.free-session{color:#72c5ff;background:#188cff26}.status-pill.due-soon,.status-pill.renewal-due,.status-pill.due-today,.status-pill.due-sunday,.status-pill.iou,.status-pill.still-owing{color:#f5c96f;background:#f0bd5924}.search-box,.field-label input,.field-label select,.field-label textarea,.money-input,.payment-status-select,.login-form input{color:#f7f9ff;background:#040a14b8;border-color:#5697ff38;box-shadow:inset 0 1px #ffffff09}.search-box input{color:#fff}.field-label,.login-form label{color:#afbdd0}th{color:#7fa8d5;background:#070f1cd9}tbody tr:hover{background:#188cff0b}.session-tabs button.active,.check-button.checked,.filter-chip.active{background:linear-gradient(135deg,#168dff,#06458f);border-color:#f0bd5973}.toggle-switch{background:#040a14b8;border-color:#5697ff33}.toggle-switch.on{color:#8bcfff;background:#188cff2e;border-color:#f0bd5966}.toggle-switch.on .toggle-knob{background:linear-gradient(145deg,#ffd474,#d38e20)}.drawer-backdrop,.modal-backdrop{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#000207b8}.dog-drawer,.simple-modal{background:linear-gradient(155deg,#0c1627f7,#03070efa);border:1px solid #5697ff2e}.drawer-hero,.drawer-facts,.drawer-section{background:#070f1cb8;border:1px solid #5697ff24}.close-small,.drawer-close{color:#dbe9ff;background:#111f34e6}.toast{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#041631f0;border:1px solid #f0bd5966;box-shadow:0 18px 50px #0000007a}.footer{color:#77869d;background:#03070eb3;border-color:#5697ff1f}.footer-mark{background:linear-gradient(145deg,#168dff,#07336d);border:1px solid #f0bd5966}.login-page{background:#02040a;padding:clamp(16px,4vw,48px)}.login-backdrop{background:radial-gradient(circle at 13% 22%,#1065e752,#0000 31%),radial-gradient(circle at 84% 18%,#f0bd5929,#0000 25%),linear-gradient(145deg,#010207,#071323 55%,#020409)}.login-backdrop:before{content:"";opacity:.22;background-image:linear-gradient(#4397ff21 1px,#0000 1px),linear-gradient(90deg,#4397ff21 1px,#0000 1px);background-size:58px 58px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 78%);mask-image:radial-gradient(circle,#000,#0000 78%)}.login-stage{z-index:1;-webkit-backdrop-filter:blur(24px)saturate(135%);backdrop-filter:blur(24px)saturate(135%);background:#050b16a8;border:1px solid #5ba4ff38;border-radius:34px;grid-template-columns:minmax(0,1.05fr) minmax(380px,.78fr);width:min(1080px,100%);min-height:min(690px,100vh - 48px);display:grid;position:relative;overflow:hidden;box-shadow:0 45px 130px #0009,inset 0 1px #ffffff0f}.login-showcase{background:radial-gradient(circle at 50% 18%,#188cff2e,#0000 35%),linear-gradient(155deg,#040b1966,#01040ab8);border-right:1px solid #5697ff29;flex-direction:column;justify-content:space-between;padding:clamp(30px,5vw,58px);display:flex;position:relative;overflow:hidden}.login-showcase:after{content:"";border:1px solid #f0bd5929;border-radius:50%;width:360px;height:360px;position:absolute;bottom:-180px;right:-170px;box-shadow:0 0 0 50px #188cff09,0 0 0 100px #f0bd5906}.logo-halo{aspect-ratio:2/3;filter:drop-shadow(0 26px 45px #00000094);width:min(350px,75%);margin:-40px auto -80px;position:relative}.logo-halo:before{content:"";z-index:-1;filter:blur(25px);background:radial-gradient(circle,#2797ff59,#f0bd591a 42%,#0000 70%);border-radius:50%;position:absolute;inset:16% 7%}.logo-halo img{object-fit:contain;mix-blend-mode:screen;width:100%;height:100%}.showcase-copy{z-index:1;max-width:510px;position:relative}.showcase-copy>span{color:var(--amber);letter-spacing:.22em;font-size:9px;font-weight:900}.showcase-copy h2{letter-spacing:-.055em;margin:12px 0 10px;font-size:clamp(29px,4vw,47px);line-height:1.02}.showcase-copy p{color:#98a9c1;max-width:470px;margin:0;font-size:12px;line-height:1.65}.showcase-stats{z-index:1;grid-template-columns:repeat(3,1fr);margin-top:28px;display:grid;position:relative}.showcase-stats span{flex-direction:column;display:flex}.showcase-stats span+span{border-left:1px solid #5697ff2e;padding-left:18px}.showcase-stats strong{color:#f3c96f;font-size:21px}.showcase-stats small{color:#71829a;text-transform:uppercase;margin-top:4px;font-size:8px}.login-card{width:100%;box-shadow:none;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#08101dad;border:0;border-radius:0;flex-direction:column;justify-content:center;padding:clamp(28px,5vw,54px);display:flex}.login-brand{margin-bottom:42px}.login-copy h1{color:#fff;font-size:clamp(28px,3vw,38px)}.login-copy p,.secure-note{color:#8797ac}.role-tabs{margin-top:28px}.login-form input{border-radius:13px;min-height:52px;padding:0 15px}.login-form .primary-button{border-radius:13px;min-height:52px;margin-top:8px}.login-error{color:#ff9aa5;background:#ff68781a;border:1px solid #ff68784d;border-radius:10px;margin:4px 0 12px;padding:10px 12px;font-size:10px}.login-loader{z-index:2;color:#cbd8ea;flex-direction:column;align-items:center;gap:15px;display:flex;position:relative}.login-loader .brand-mark{border-radius:20px;width:76px;height:76px}.whatsapp-button{color:#fff;cursor:pointer;background:linear-gradient(145deg,#25be55e6,#0d7033f2);border:1px solid #45d36e66;border-radius:11px;min-height:40px;padding:0 14px;font-weight:900}.whatsapp-button:disabled{opacity:.45;cursor:not-allowed}.password-modal{width:min(500px,100%)}.password-modal>h2{margin:8px 0;font-size:26px}.password-modal>p,.settings-security>p{color:var(--muted);font-size:11px;line-height:1.6}.mandatory-modal{z-index:150}.password-form{margin-top:20px}.settings-grid{grid-template-columns:minmax(260px,.65fr) minmax(340px,1.35fr);gap:17px;display:grid}.settings-profile{text-align:center;flex-direction:column;align-items:center;display:flex}.settings-profile .eyebrow{align-self:flex-start}.settings-profile h2{margin:14px 0 4px}.settings-profile>p{color:var(--muted);margin:0 0 20px;font-size:10px}.profile-photo-large{background:#188cff1a;border:1px solid #f0bd5966;border-radius:30px;place-items:center;width:112px;height:112px;margin-top:20px;display:grid;overflow:hidden;box-shadow:0 18px 45px #00000059}.profile-photo-large img{object-fit:cover;width:100%;height:100%}.profile-photo-large .person-avatar{border-radius:0;width:100%;height:100%;font-size:30px}.photo-upload{width:100%;position:relative;overflow:hidden}.photo-upload input{opacity:0;cursor:pointer;position:absolute;inset:0}.profile-photo-choice,.document-page-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:100%;display:grid}.document-page-picker{margin:12px 0}.document-view-row{grid-template-columns:42px minmax(0,1fr) auto}.document-view-actions{flex-wrap:wrap;grid-column:2/-1;gap:8px;display:flex}.document-view-actions .text-button{background:#188cff17;border:1px solid #5697ff38;border-radius:10px;align-items:center;min-height:38px;padding:0 11px;text-decoration:none;display:inline-flex}.settings-message{color:#72c5ff;margin-top:10px}.settings-security h2{margin:8px 0;font-size:24px}.glow{filter:blur(35px)}.glow-one{background:#1a80ff47}.glow-two{background:#f0bd5924}@media (max-width:860px){.login-stage{border-radius:28px;grid-template-columns:1fr;width:min(500px,100%);min-height:0}.login-showcase{border-bottom:1px solid #5697ff29;border-right:0;min-height:270px;padding:24px}.logo-halo{width:175px;height:235px;margin:-38px auto -72px}.showcase-copy h2{margin:8px 0 4px;font-size:26px}.showcase-copy p,.showcase-stats{display:none}.login-card{padding:28px 25px}.login-brand{display:none}}@media (max-width:760px){body{padding-bottom:88px}.topbar{min-height:64px;padding:8px 12px}.brand-mark{width:44px;height:44px}.topbar-actions{gap:8px}.logout-button{min-width:68px;min-height:42px;padding:0 10px}.launcher{width:100%;padding:8px 8px calc(8px + env(safe-area-inset-bottom));z-index:70;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:#030810e6;border-top:1px solid #f0bd592e;gap:5px;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -18px 40px #0006}.launcher-button{min-width:72px;min-height:68px;box-shadow:none;border-radius:13px;gap:5px;padding:7px 6px}.launcher-icon{border-radius:9px;width:30px;height:30px;font-size:9px}.launcher-button strong{font-size:9px}.content{padding:18px 12px 25px}.page-heading h1{font-size:27px}.page-heading p{font-size:12px;line-height:1.5}.panel,.dog-strip,.family-card,.assignment-card{border-radius:17px;padding:18px 16px}.primary-button,.secondary-button,.logout-button{min-height:44px}.table-wrap{margin:0;padding-bottom:4px}table{min-width:650px}th,td{padding:12px 11px}.simple-modal{border-radius:20px;max-height:calc(100dvh - 24px);padding:20px 16px}.dog-drawer{padding:14px;padding-bottom:calc(28px + env(safe-area-inset-bottom))}.training-activation-grid{grid-template-columns:1fr}.activation-card{padding:15px}.toggle-switch{min-width:104px}.session-tabs{scrollbar-width:none;overflow-x:auto}.session-tabs button{min-width:175px}.footer{display:none}.settings-grid{grid-template-columns:1fr}}@media (max-width:430px){.login-page{align-items:start;padding:10px;overflow-y:auto}.login-stage{border-radius:23px;margin:8px 0}.login-showcase{min-height:232px;padding:19px}.logo-halo{width:150px;height:205px}.showcase-copy h2{font-size:23px}.login-card{padding:24px 19px 22px}.role-tabs button{min-height:44px}.stat-grid{grid-template-columns:1fr}.stat-card{grid-template-columns:44px 1fr;min-height:104px;display:grid}.stat-card strong{font-size:25px}.family-profile-head .status-pill{margin-left:0}.register-counts{grid-template-columns:repeat(3,1fr);display:grid}.register-counts span{padding:8px 5px}.drawer-hero{grid-template-columns:88px minmax(0,1fr)}.drawer-hero img{width:88px;height:112px}.drawer-hero h2{font-size:24px}.document-row{grid-template-columns:34px minmax(0,1fr)}.document-row .status-pill,.document-row .text-button{grid-column:2}.account-actions{flex-direction:column;align-items:stretch;min-width:190px}}.homework-modal{width:min(610px,100%)}.assignment-target-tabs{background:#0309139e;border:1px solid #5697ff29;border-radius:14px;grid-template-columns:repeat(3,1fr);gap:5px;margin:22px 0;padding:5px;display:grid}.assignment-target-tabs button{color:#8292a9;cursor:pointer;background:0 0;border:0;border-radius:10px;min-height:42px;font-size:10px;font-weight:900}.assignment-target-tabs button.active{color:#fff;background:linear-gradient(135deg,#2e8fffeb,#1644aaf0);box-shadow:0 10px 24px #0c4db947}.target-summary,.assignment-recipient{align-items:center;gap:12px;display:flex}.target-summary{background:#f0bd590e;border:1px solid #f0bd5933;border-radius:13px;padding:14px}.target-summary>span{color:#efc363;background:#f0bd591f;border-radius:11px;place-items:center;width:38px;height:38px;font-size:9px;font-weight:950;display:grid}.target-summary div,.assignment-recipient{flex-direction:column;align-items:flex-start;gap:3px}.target-summary small,.assignment-recipient small{color:var(--muted)}.assignment-recipient{border-top:1px solid #5697ff1f;margin:18px 0;padding-top:14px}@media (max-width:430px){.assignment-target-tabs{grid-template-columns:1fr}}.login-page .login-stage{border-radius:30px}.login-page .logo-halo{aspect-ratio:auto;clip-path:polygon(50% 0%,94% 17%,91% 67%,82% 82%,50% 100%,18% 82%,9% 67%,6% 17%);width:285px;height:270px;box-shadow:none;filter:drop-shadow(0 28px 34px #00000094)drop-shadow(0 0 24px #2184ff3d);background:0 0;border:0;border-radius:0;margin:-4px auto 18px;overflow:hidden}.login-page .logo-halo:before{content:"";z-index:0;clip-path:inherit;background:linear-gradient(135deg,#369dff8c,#e5af3f80 52%,#1968e17a);position:absolute;inset:0}.login-page .logo-halo:after{content:"";z-index:1;clip-path:inherit;background:#02050b;position:absolute;inset:3px}.login-page .logo-halo img{z-index:2;object-fit:initial;mix-blend-mode:screen;width:100%;height:auto;position:relative;transform:translateY(-1%)}.login-page .shield-orbit{display:none}.login-page .showcase-emblem{z-index:2;flex-direction:column;align-items:center;display:flex;position:relative}.login-page .showcase-brand-name{letter-spacing:.08em;text-align:center;filter:drop-shadow(0 10px 20px #0000007a);flex-direction:column;align-items:center;margin-top:-2px;line-height:.82;display:flex}.login-page .showcase-brand-name strong{color:#0000;background:linear-gradient(100deg,#a9c9ef 4%,#fff 28%,#e8b555 55%,#f7e6bd 72%,#79b7ff 100%);-webkit-background-clip:text;background-clip:text;font-size:31px;font-weight:950}.login-page .showcase-brand-name span{color:#c8d5e8;letter-spacing:.22em;margin-top:9px;font-size:19px;font-weight:500}.login-page .showcase-copy>span{text-align:center;justify-content:center;width:fit-content;margin-left:auto;margin-right:auto;display:flex}.login-page .login-field>span{align-items:center;width:100%;display:flex;position:relative}.login-page .login-field>span>i{z-index:2;color:#6eb3ff;background:#3785ee14;border:1px solid #5da5ff2e;border-radius:10px;place-items:center;width:34px;height:34px;font-size:9px;font-style:normal;font-weight:950;display:grid;position:absolute;left:12px}.login-page .login-field input{width:100%;padding-left:58px}.login-page .login-field input::placeholder{color:#526177;opacity:1}@media (max-width:900px){.login-page .login-stage{border-radius:26px}.login-page .logo-halo{width:152px;height:144px;margin:-6px auto -17px}.login-page .showcase-brand-name strong{font-size:20px}.login-page .showcase-brand-name span{margin-top:6px;font-size:12px}}@media (max-width:430px){body:has(.login-page){padding-bottom:0}.login-page{padding:0}.login-page .login-stage{border:0;border-radius:0;min-height:100dvh;margin:0}.login-page .login-showcase{min-height:235px}.login-page .logo-halo{width:120px;height:112px;margin:-4px auto -7px}.login-page .showcase-brand-name strong{font-size:17px}.login-page .showcase-brand-name span{margin-top:5px;font-size:10px}.login-page .login-card{padding:30px 22px calc(28px + env(safe-area-inset-bottom))}}@media (max-width:760px){:root{--mobile-edge:14px}html{background:#020711}body{padding-bottom:calc(86px + env(safe-area-inset-bottom));background:radial-gradient(circle at 0 0,#176be724,#0000 33%),#020711}button,input,select,textarea{font-size:16px}.portal-shell{background:0 0;min-height:100dvh}.topbar{min-height:66px;padding:9px var(--mobile-edge);z-index:80;-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%);background:#030912db;border-bottom:1px solid #5a9dff21;position:sticky;top:0;box-shadow:0 14px 34px #0000004d}.topbar .brand-lockup{gap:9px;min-width:0}.topbar .brand-mark{border-radius:13px;flex:0 0 42px;width:42px;height:42px}.topbar .brand-lockup strong{white-space:nowrap;font-size:13px}.topbar .brand-lockup small{letter-spacing:.13em;font-size:7px}.topbar-actions{gap:6px}.role-switcher{display:none}.logout-button{border-radius:12px;width:42px;min-width:42px;min-height:42px;padding:0;font-size:0}.logout-button:before{content:"↗";font-size:17px;display:block;transform:rotate(45deg)}.launcher{width:auto;height:calc(76px + env(safe-area-inset-bottom));padding:7px 9px calc(7px + env(safe-area-inset-bottom));z-index:100;-webkit-backdrop-filter:blur(28px)saturate(150%);backdrop-filter:blur(28px)saturate(150%);scrollbar-width:none;scroll-snap-type:x proximity;background:#050d1aeb;border:1px solid #5ea3ff2e;border-radius:22px;gap:4px;display:flex;position:fixed;bottom:7px;left:8px;right:8px;overflow:auto hidden;box-shadow:0 22px 55px #0000008c,inset 0 1px #ffffff0f}.launcher::-webkit-scrollbar{display:none}.launcher-button{min-width:68px;min-height:60px;box-shadow:none;scroll-snap-align:center;background:0 0;border:0;border-radius:15px;flex:1 0 68px;gap:3px;padding:5px 4px}.launcher-button.active{background:linear-gradient(145deg,#2387ff3d,#0d378133);box-shadow:inset 0 0 0 1px #5caaff38,0 8px 20px #0003}.launcher-icon{border-radius:9px;width:29px;height:29px;font-size:8px}.launcher-button strong{font-size:8px}.content{padding:19px var(--mobile-edge) 28px}.page-heading{align-items:flex-start;gap:12px;margin-bottom:18px}.page-heading>div{min-width:0}.page-heading .eyebrow{letter-spacing:.14em;font-size:8px}.page-heading h1{letter-spacing:-.05em;margin-top:5px;font-size:29px;line-height:1}.page-heading p{max-width:100%;margin-top:8px;font-size:11px;line-height:1.55}.page-heading>.primary-button,.page-heading>.secondary-button{white-space:nowrap;min-width:44px;min-height:44px;padding:0 12px}.panel,.dog-strip,.family-card,.assignment-card,.activation-card{background:linear-gradient(155deg,#0d1b2fdb,#040b16e0);border:1px solid #5197ff26;border-radius:19px;padding:17px 15px;box-shadow:0 15px 34px #0000003d,inset 0 1px #ffffff0a}.panel-heading{gap:10px}.panel-heading h2{font-size:19px;line-height:1.15}.panel-heading p{font-size:10px;line-height:1.5}.primary-button,.secondary-button,.whatsapp-button{border-radius:13px;min-height:48px;padding:0 15px}.primary-button.small{min-height:40px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card{border-radius:18px;flex-direction:column;align-items:flex-start;gap:12px;min-height:132px;padding:15px 13px;display:flex}.stat-icon{border-radius:12px;width:39px;height:39px}.stat-card strong{font-size:25px}.stat-card small,.stat-card em{font-size:8px}.handler-hero{border-radius:21px;grid-template-columns:1fr;padding:21px 18px}.handler-hero h2{font-size:27px}.family-badge{margin-top:5px}.overview-grid,.settings-grid,.homework-layout,.payment-summary-grid,.fee-field-grid{grid-template-columns:1fr}.dog-strip-head{align-items:flex-start}.dog-strip-grid{scroll-snap-type:none;grid-template-columns:minmax(0,1fr);grid-auto-columns:auto;grid-auto-flow:row;gap:13px;display:grid;overflow:visible}.dog-strip-grid>*{scroll-snap-align:none;width:100%;min-width:0}.dogs-grid,.family-grid,.assignment-grid{grid-template-columns:1fr;gap:12px}.dog-card{border-radius:19px}.dog-card.compact{grid-template-columns:none;min-width:0;display:block}.dog-card.compact .dog-photo-wrap{height:210px;min-height:0}.dog-photo-wrap{height:225px}.dog-card-body{padding:16px}.dog-card-meta{flex-wrap:wrap;align-items:flex-start}.dog-card-meta .text-button{min-height:40px;margin-left:auto}.family-card-head{align-items:flex-start}.family-mark{flex:0 0 44px;width:44px;height:44px}.family-counts{margin:18px 0}.family-meta{grid-template-columns:1fr;gap:8px}.family-meta span{background:#050c1759;border:1px solid #589bff1a;border-radius:12px;padding:12px}.table-panel{padding:0;overflow:hidden}.table-panel>.panel-heading,.table-panel>.filter-row,.register-heading{padding:16px 15px}.table-wrap{scroll-snap-type:x proximity;scrollbar-width:thin;margin:0;padding:0 0 6px;overflow-x:auto}table{min-width:700px}th{z-index:2;background:#081322;padding:11px 12px;font-size:8px;position:sticky;top:0}td{padding:13px 12px;font-size:10px}.attendance-panel table{min-width:760px}.attendance-action,.payment-status-select{min-height:42px}.register-heading{grid-template-columns:1fr;display:grid}.register-counts{grid-template-columns:repeat(3,1fr);gap:6px;width:100%;display:grid}.register-counts span{text-align:center;border:1px solid #5697ff1f;border-radius:11px;min-width:0;padding:10px 5px}.training-activation-grid,.weekend-rsvp-grid{grid-template-columns:1fr;gap:10px}.activation-card{min-height:0}.handler-rsvp{grid-template-columns:38px minmax(0,1fr);gap:9px;padding:14px 0;display:grid}.handler-rsvp .segmented{grid-column:1/-1;width:100%}.segmented button{min-height:45px}.session-tabs{scroll-snap-type:x mandatory;gap:8px;margin:0 -2px 13px;padding-bottom:4px;overflow-x:auto}.session-tabs button{scroll-snap-align:start;border-radius:15px;min-width:76%}.filter-row{flex-direction:column;align-items:stretch}.search-box{width:100%;min-height:46px}.chip-row{scrollbar-width:none;flex-wrap:nowrap;padding-bottom:3px;overflow-x:auto}.filter-chip{flex:none;min-height:40px}.assignment-target-tabs{grid-template-columns:1fr}.assignment-card h2{font-size:21px}.submission-row{grid-template-columns:42px minmax(0,1fr);gap:10px;padding:13px 0;display:grid}.submission-row .status-pill,.submission-row .secondary-button{grid-column:2;justify-self:stretch}.video-drop{min-height:210px}.assignment-meta{grid-template-columns:1fr}.simple-modal{width:calc(100% - 16px);max-height:calc(100dvh - 16px);padding:21px 17px calc(20px + env(safe-area-inset-bottom));border-radius:23px;margin:8px}.modal-backdrop{align-items:flex-end;padding:0}.modal-fields{gap:13px}.field-label input,.field-label select,.field-label textarea,.money-input{border-radius:13px;min-height:50px}.modal-actions{z-index:3;padding:12px 17px calc(12px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#050c17f0;margin:20px -17px -20px;position:sticky;bottom:0}.modal-actions button{flex:1}.dog-drawer{width:100%;max-width:none;max-height:92dvh;padding:18px 15px calc(24px + env(safe-area-inset-bottom));border-radius:25px 25px 0 0;margin-top:auto}.drawer-backdrop{align-items:flex-end}.drawer-hero{grid-template-columns:84px minmax(0,1fr)}.drawer-hero img{border-radius:15px;width:84px;height:108px}.drawer-facts{grid-template-columns:1fr}.drawer-actions{grid-template-columns:1fr;display:grid}.footer{display:none}}@media (max-width:380px){:root{--mobile-edge:11px}.topbar .brand-lockup strong{font-size:12px}.page-heading h1{font-size:27px}.stat-card{min-height:126px}.launcher{left:5px;right:5px}}.login-page .showcase-copy{text-align:center;max-width:100%}.login-page .showcase-copy h2,.login-page .showcase-copy p{margin-left:auto;margin-right:auto}.attendance-card-list{display:none}@media (max-width:760px){body{padding-bottom:calc(158px + env(safe-area-inset-bottom))}.launcher{height:auto;min-height:126px;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:linear-gradient(145deg,#091629f0,#030913f5);border-radius:25px;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid;overflow:visible;box-shadow:0 -12px 44px #0000008a,inset 0 1px #ffffff14,0 0 0 1px #2d7bf614}.launcher-button{border-radius:14px;flex:none;width:100%;min-width:0;min-height:54px;padding:4px 2px}.launcher-button:hover{transform:none}.launcher-button.active{background:linear-gradient(155deg,#2b8eff57,#0e378245);box-shadow:inset 0 0 0 1px #69b2ff45,0 8px 24px #030c1c59}.launcher-icon{background:linear-gradient(145deg,#2a7af02e,#ebb23d12);border-radius:9px;width:27px;height:27px}.launcher-button.active .launcher-icon{color:#fff;background:linear-gradient(145deg,#2f91ff,#194cb4);box-shadow:0 7px 17px #186ae757}.launcher-button strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:7.5px;overflow:hidden}.nav-notification{top:2px;right:4px}.content{max-width:620px;margin-inline:auto}.page-heading{padding:3px 2px 0}.page-heading>.primary-button{border-radius:15px;box-shadow:0 10px 25px #1c68e140}.panel,.dog-strip,.family-card,.assignment-card,.activation-card{-webkit-backdrop-filter:blur(22px)saturate(130%);backdrop-filter:blur(22px)saturate(130%);background:linear-gradient(150deg,#12233ad4,#050c18e6);box-shadow:0 18px 44px #00000047,inset 0 1px #ffffff0e}.session-tabs{grid-template-columns:1fr 1fr;display:grid;overflow:visible}.session-tabs button{width:100%;min-width:0;min-height:64px}.attendance-panel{padding:0 0 14px;overflow:visible}.attendance-panel .register-heading{border-bottom:1px solid #5a9dff1f}.attendance-card-list{gap:11px;padding:13px;display:grid}.desktop-register{display:none}.attendance-mobile-card{background:linear-gradient(150deg,#112239e6,#060f1df0);border:1px solid #5b9dff26;border-radius:19px;padding:15px;overflow:hidden;box-shadow:0 13px 30px #0003,inset 0 1px #ffffff0b}.attendance-mobile-card.is-present{background:linear-gradient(150deg,#123536c4,#06121df0);border-color:#39cf8945}.attendance-card-top{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.attendance-card-top h3{margin:0 0 3px;font-size:18px}.attendance-card-top p{color:var(--muted);margin:0;font-size:10px;line-height:1.35}.attendance-card-top .status-pill{text-align:center;max-width:98px}.attendance-card-facts{grid-template-columns:1fr 1fr;gap:7px;margin:14px 0 12px;display:grid}.attendance-card-facts span{background:#01070f4d;border:1px solid #5a9dff1a;border-radius:12px;gap:4px;padding:10px;display:grid}.attendance-card-facts small,.mobile-payment-field>span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:800}.attendance-card-facts strong{font-size:12px}.attendance-card-actions{gap:9px;display:grid}.attendance-card-actions .attendance-action{border-radius:13px;width:100%;min-height:48px;font-size:11px}.mobile-payment-field{gap:7px;display:grid}.mobile-payment-field .payment-status-select{border-radius:13px;width:100%;min-height:49px}.mobile-payment-locked{color:var(--muted);text-align:center;border:1px dashed #7997bf2e;border-radius:12px;padding:12px;font-size:10px}.trainer-attendance-state{justify-content:flex-end;display:flex}.table-panel:not(.attendance-panel) .table-wrap{padding:8px 11px 13px;overflow:visible}.table-panel:not(.attendance-panel) table,.table-panel:not(.attendance-panel) tbody,.table-panel:not(.attendance-panel) tr,.table-panel:not(.attendance-panel) td{width:100%;min-width:0;display:block}.table-panel:not(.attendance-panel) thead{display:none}.table-panel:not(.attendance-panel) tr{background:#081323ad;border:1px solid #589bff21;border-radius:16px;margin:8px 0;padding:12px;overflow:hidden;box-shadow:0 10px 25px #00000029}.table-panel:not(.attendance-panel) td{border:0;border-bottom:1px solid #ffffff0e;padding:8px 3px}.table-panel:not(.attendance-panel) td:last-child{border-bottom:0}.table-panel:not(.attendance-panel) td .primary-button,.table-panel:not(.attendance-panel) td .secondary-button,.table-panel:not(.attendance-panel) td .whatsapp-button{width:100%}.attendance-history .table-wrap{overflow:visible}.modal-backdrop,.drawer-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#00040bbd}.simple-modal,.dog-drawer{background:linear-gradient(160deg,#0d1d32fa,#030a14fc);border-color:#66abff36;box-shadow:0 -20px 70px #0009,inset 0 1px #ffffff12}}@media (max-width:390px){.launcher{grid-template-columns:repeat(5,minmax(0,1fr));left:5px;right:5px}.launcher-button strong{font-size:7px}.attendance-card-top{grid-template-columns:38px minmax(0,1fr)}.attendance-card-top>.status-pill{grid-column:2;justify-self:start}}.heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.record-payment-modal{width:min(570px,100%)}.payment-credit-note{background:linear-gradient(145deg,#2bb4701a,#2670e30f);border:1px solid #4ad39038;border-radius:15px;align-items:center;gap:12px;margin:20px 0;padding:14px;display:flex}.payment-credit-note>span{color:#64dda1;background:#33cd8421;border-radius:13px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:11px;font-weight:950;display:grid}.payment-credit-note>div{gap:3px;display:grid}.payment-credit-note small{color:var(--muted);line-height:1.45}.selected-account-preview{background:#040c186b;border:1px solid #5b9dff24;border-radius:14px;grid-template-columns:1fr 1fr;gap:8px;padding:12px;display:grid}.selected-account-preview span{gap:4px;display:grid}.selected-account-preview small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:850}@media (max-width:760px){.heading-actions{grid-template-columns:1fr 1.25fr;width:100%;display:grid}.heading-actions button{width:100%;min-width:0}.record-payment-modal{width:calc(100% - 12px)}.selected-account-preview{grid-template-columns:1fr}body{padding-bottom:calc(22px + env(safe-area-inset-bottom))}body:has(.portal-shell.section-overview){padding-bottom:calc(164px + env(safe-area-inset-bottom))}.portal-shell:not(.section-overview) .content{padding-bottom:calc(38px + env(safe-area-inset-bottom))}.launcher{grid-template-columns:repeat(4,minmax(0,1fr));min-height:132px;overflow:visible}.launcher-button{min-width:0}}.chat-mobile-picker{display:none}@media (max-width:760px){.chat-sidebar{white-space:normal;padding:13px;overflow:visible}.chat-sidebar-head{padding:2px 1px 12px}.chat-sidebar>.chat-contact,.chat-sidebar>.chat-contact-label{display:none}.chat-mobile-picker{gap:7px;display:grid}.chat-mobile-picker>span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:8px;font-weight:900}.chat-mobile-picker select{color:#fff;background:linear-gradient(145deg,#143053eb,#08162af2);border:1px solid #5ba4ff3d;border-radius:15px;width:100%;min-height:54px;padding:0 44px 0 15px;font-weight:800;box-shadow:inset 0 1px #ffffff0f,0 10px 25px #0003}.chat-shell{gap:10px}.chat-panel{min-height:530px}}.notification-centre{position:relative}.notification-bell{color:#dbeaff;cursor:pointer;background:linear-gradient(145deg,#132e4fe0,#071427eb);border:1px solid #5ba4ff38;border-radius:13px;place-items:center;width:43px;height:43px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff12,0 9px 22px #0003}.notification-bell>span{filter:saturate(.7);font-size:17px}.notification-bell.active{border-color:#f0bd597a;box-shadow:inset 0 1px #ffffff17,0 0 22px #f0bd5921}.notification-bell b{color:#08111f;background:linear-gradient(135deg,#ffd26b,#ee9a2d);border:2px solid #07101d;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:8px;font-weight:950;display:grid;position:absolute;top:-5px;right:-5px}.notification-dropdown{z-index:130;-webkit-backdrop-filter:blur(28px)saturate(145%);backdrop-filter:blur(28px)saturate(145%);background:linear-gradient(155deg,#0d1d32fa,#030a14fc);border:1px solid #60a7ff38;border-radius:21px;width:min(390px,100vw - 22px);max-height:min(620px,100dvh - 82px);padding:14px;position:absolute;top:52px;right:0;overflow-y:auto;box-shadow:0 28px 80px #000000a6,inset 0 1px #ffffff12}.notification-dropdown-head{justify-content:space-between;align-items:center;padding:3px 2px 12px;display:flex}.notification-dropdown-head h3{margin:3px 0 0}.notification-permission-card{width:100%;color:var(--text);text-align:left;font:inherit;cursor:pointer;background:linear-gradient(145deg,#27ae6c1c,#1f63d214);border:1px solid #40cf8b33;border-radius:15px;grid-template-columns:39px 1fr;align-items:center;gap:11px;padding:12px;display:grid}.notification-permission-card>span{color:#61dca0;background:#30c67f21;border-radius:12px;place-items:center;width:39px;height:39px;font-weight:950;display:grid}.notification-permission-card>div{gap:3px;display:grid}.notification-permission-card small{color:var(--muted);font-size:9px;line-height:1.45}.notification-list{gap:7px;margin-top:10px;display:grid}.notification-list>button{width:100%;color:var(--text);text-align:left;font:inherit;cursor:pointer;background:#ffffff09;border:0;border-radius:13px;grid-template-columns:39px 1fr auto;align-items:center;gap:10px;padding:11px 8px;display:grid}.notification-list>button:hover{background:#2d7ef01c}.notification-list>button>div{gap:3px;display:grid}.notification-list small{color:var(--muted);font-size:9px}.notification-list em{color:#78baff;font-size:8px;font-style:normal;font-weight:850}.notification-type{color:#86c3ff;background:#2d80f221;border-radius:12px;place-items:center;width:39px;height:39px;font-size:9px;font-weight:950;display:grid}.notification-type.homework{color:#e9c66b;background:#e7b7411c}.notification-type.health{color:#70dba1;background:#31c67c1c}.notification-type.payment{color:#ffaa72;background:#ef77341f}.notifications-empty{color:var(--muted);text-align:center;justify-items:center;gap:5px;padding:24px 12px;display:grid}.notifications-empty>span{color:#60daa0;background:#2fc27b1a;border-radius:14px;place-items:center;width:42px;height:42px;display:grid}.notifications-empty strong{color:var(--text)}@media (max-width:760px){.notification-dropdown{width:auto;max-height:calc(100dvh - 82px);position:fixed;top:68px;left:11px;right:11px}.notification-bell{width:42px;height:42px}}.created-session-tabs{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:9px;margin-bottom:14px;display:grid}.created-session-tabs button{min-height:86px;color:var(--text);text-align:left;font:inherit;cursor:pointer;background:linear-gradient(145deg,#10233bc7,#060f1ddb);border:1px solid #5a9fff26;border-radius:16px;gap:3px;padding:13px;display:grid}.created-session-tabs button.active{background:linear-gradient(145deg,#2373e159,#0c2b636b);border-color:#56a3ff73;box-shadow:0 14px 32px #07368440,inset 0 1px #ffffff14}.created-session-tabs strong{color:var(--gold);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.created-session-tabs span{font-size:14px;font-weight:850}.created-session-tabs small{color:var(--muted)}.created-session-list{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:13px;display:grid}.no-training-dates{text-align:center;align-content:center;place-items:center;min-height:300px;display:grid}.no-training-dates>span{color:#79baff;background:#2574e31c;border:1px solid #5ba4ff33;border-radius:18px;place-items:center;width:58px;height:58px;font-size:10px;font-weight:950;display:grid}.no-training-dates h2{margin:14px 0 4px}.no-training-dates p{max-width:430px;color:var(--muted)}.training-date-modal{width:min(560px,100%)}.training-date-callout{background:#2470dd14;border:1px solid #5ba4ff2e;border-radius:15px;align-items:center;gap:12px;margin:20px 0;padding:14px;display:flex}.training-date-callout>span{color:#7dbdff;background:#2d80f224;border-radius:13px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:9px;font-weight:950;display:grid}.training-date-callout>div{gap:3px;display:grid}.training-date-callout small,.weekend-date-note{color:var(--muted);line-height:1.45}.weekend-date-note{margin-top:12px;display:block}@media (max-width:760px){.created-session-tabs{scroll-snap-type:x mandatory;scrollbar-width:none;grid-template-columns:none;grid-auto-columns:82%;grid-auto-flow:column;display:grid;overflow-x:auto}.created-session-tabs button{scroll-snap-align:start}.created-session-list{grid-template-columns:1fr}}.install-app-panel{isolation:isolate;-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%);background:linear-gradient(125deg,#0b1a2ff0,#0c2a54d1 58%,#4b2f0c9e);border:1px solid #f0bd5940;border-radius:20px;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:14px;margin:0 0 18px;padding:14px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 48px #00000047,inset 0 1px #ffffff17}.install-app-panel:before{content:"";z-index:-1;border:1px solid #f4c05133;border-radius:50%;width:210px;height:210px;position:absolute;bottom:-145px;right:-70px;box-shadow:0 0 55px #2074ee30}.install-app-icon{background:#02050a;border:1px solid #f7c3557a;border-radius:17px;width:62px;height:62px;padding:4px;overflow:hidden;box-shadow:0 10px 28px #0000006b,0 0 22px #2f84ff24}.install-app-icon img{object-fit:cover;object-position:center 22%;border-radius:13px;width:100%;height:100%;display:block}.login-install-button{text-align:left;width:100%;min-height:58px;color:var(--text);cursor:pointer;background:linear-gradient(135deg,#f2bf551f,#2e86ff1f);border:1px solid #f2bf5559;border-radius:16px;grid-template-columns:34px 1fr;align-items:center;column-gap:9px;margin-top:14px;padding:10px 14px;display:grid}.login-install-button>span{color:#06101f;background:linear-gradient(135deg,#f7cd6a,#2e86ff);border-radius:10px;grid-row:1/3;place-items:center;width:32px;height:32px;font-weight:900;display:grid}.login-install-button strong{font-size:.83rem}.login-install-button small{color:var(--muted);font-size:.68rem}.install-ready-message{color:var(--muted);text-align:center}.install-preparing{background:#2e86ff1a;border:1px solid #46c7ff40;border-radius:14px;align-items:center;gap:12px;margin:14px 0;padding:14px;display:flex}.install-preparing div{gap:3px;display:grid}.install-preparing small{color:var(--muted)}.install-spinner{border:3px solid #46c7ff33;border-top-color:#46c7ff;border-radius:50%;flex:none;width:24px;height:24px;animation:.8s linear infinite install-spin}@keyframes install-spin{to{transform:rotate(360deg)}}.install-app-copy{gap:3px;min-width:0;display:grid}.install-app-copy>strong{letter-spacing:-.02em;font-size:15px}.install-app-copy>small{color:var(--muted);line-height:1.45}.install-app-button{color:#07101d;min-height:48px;font:inherit;cursor:pointer;background:linear-gradient(135deg,#ffe083,#eba735);border:1px solid #ffd26a7a;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 17px;display:flex;box-shadow:0 12px 28px #d38e1933,inset 0 1px #ffffff8c}.install-app-button>span{font-size:19px;line-height:1}.install-app-button>strong{letter-spacing:.02em;white-space:nowrap;font-size:10px}.install-help-modal{text-align:center;width:min(470px,100%)}.modal-backdrop:has(.install-help-modal){z-index:180}.install-help-logo{border:1px solid #f0bd596b;border-radius:23px;width:82px;height:82px;margin:4px auto 14px;overflow:hidden;box-shadow:0 14px 34px #0006}.install-help-logo img{object-fit:cover;width:100%;height:100%;display:block}.install-help-modal h2{margin:6px 0 18px}.install-browser-warning{color:var(--muted);background:#f0bd5912;border:1px solid #f0bd5938;border-radius:13px;margin:-7px 0 16px;padding:11px 12px;font-size:10px;line-height:1.55}.install-browser-warning strong{color:var(--gold)}.install-open-browser{width:100%;margin-bottom:9px}.install-help-steps{text-align:left;gap:9px;margin-bottom:18px;display:grid}.install-help-steps>div{background:#ffffff09;border:1px solid #5ba4ff24;border-radius:14px;grid-template-columns:37px 1fr;align-items:center;gap:11px;padding:12px;display:grid}.install-help-steps b{width:37px;height:37px;color:var(--gold);background:#f0bd591a;border-radius:12px;place-items:center;display:grid}.install-help-steps span{gap:3px;display:grid}.install-help-steps small{color:var(--muted);line-height:1.4}.install-help-modal>.primary-button{width:100%}@media (max-width:760px){.install-app-panel{border-radius:18px;grid-template-columns:53px minmax(0,1fr);gap:11px;margin:-2px 0 16px;padding:12px}.install-app-icon{border-radius:15px;width:53px;height:53px}.install-app-icon img{border-radius:11px}.install-app-copy>strong{font-size:13px}.install-app-copy>small{font-size:9px}.install-app-button{grid-column:1/-1;width:100%;min-height:46px}.modal-backdrop:has(.install-help-modal){padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));align-items:center}.install-help-modal{width:100%;max-height:calc(100dvh - max(24px, env(safe-area-inset-top)) - max(24px, env(safe-area-inset-bottom)));padding-bottom:calc(20px + env(safe-area-inset-bottom));overscroll-behavior:contain;overflow-y:auto}.install-help-modal>.primary-button{z-index:2;min-height:50px;position:sticky;bottom:0}}@media (display-mode:standalone){.install-app-panel{display:none!important}}.renewal-lookup{background:linear-gradient(145deg,#1f975e1f,#1f69d314)}.registration-shell>form{flex-direction:column;display:flex}.registration-shell>form>.renewal-lookup{order:1}.registration-shell>form>.registration-actions{order:2}.accept-all-control{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f0bc4a26,#2f84f524);border:1px solid #f2c1566b;border-radius:17px;order:-1;align-items:center;gap:13px;margin:0 0 12px;padding:15px 17px;display:flex;box-shadow:0 12px 30px #0003}.accept-all-control input{accent-color:#efba4d;flex:none;width:24px;height:24px}.accept-all-control span{gap:3px;display:grid}.accept-all-control b{color:#f8cd6b}.accept-all-control small{color:#9eb0c6}.renewal-profile-actions{grid-template-columns:2fr 1fr 1fr;gap:8px;margin-top:10px;display:grid}.renewal-profile-actions button{color:#eaf4ff;min-height:44px;font:inherit;background:#2879e71f;border:1px solid #68a9f740;border-radius:11px;padding:8px;font-size:11px;font-weight:850}.renewal-profile-actions button:first-child{color:#06101e;background:linear-gradient(135deg,#f5cb67,#4597ff)}@media (max-width:600px){.renewal-profile-actions{grid-template-columns:1fr 1fr}.renewal-profile-actions button:first-child{grid-column:1/-1}}.choice-grid input[value=new]+span:after{content:"R1,300 family registration fee";color:#ffd16b;margin-top:6px;font-size:13px;font-weight:900}.choice-grid input[value=renewal]+span:after{content:"R1,200 annual renewal fee";color:#ffd16b;margin-top:6px;font-size:13px;font-weight:900}.renewal-lookup{background:linear-gradient(145deg,rgba(31,151,,.12),#1f69d314);border:1px solid #4ad3904d;border-radius:20px;margin:18px 0;padding:20px}.renewal-lookup h3{margin:7px 0}.renewal-lookup>p{color:#98a9bd}.renewal-lookup>.primary-button{margin-top:13px}.renewal-found{font-weight:800;color:#65dda1!important}.renewal-message{color:#f3c15e!important}.existing-family-summary{background:#35ca8417;border-radius:14px;gap:4px;margin-top:13px;padding:14px;display:grid}.existing-family-summary span,.existing-family-summary small{color:#9eb1c6}.choice-grid input:checked+span{background:linear-gradient(145deg,#e8b13d33,#287eef33);border-color:#ffd16b;position:relative;box-shadow:0 0 0 2px #ebb7451f,0 16px 34px #0003}.choice-grid input:checked+span:before{content:"✓ SELECTED";color:#ffd16b;letter-spacing:.08em;font-size:9px;font-weight:950;position:absolute;top:10px;right:12px}.document-viewer{z-index:300;color:var(--text);background:#030812;grid-template-rows:auto minmax(0,1fr);display:grid;position:fixed;inset:0}.document-viewer header{min-height:70px;padding:max(12px, env(safe-area-inset-top)) 16px 12px;-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%);background:#050e1ceb;border-bottom:1px solid #5ba4ff33;align-items:center;gap:12px;display:flex}.document-viewer header button{width:46px;height:46px;color:var(--gold);cursor:pointer;background:linear-gradient(145deg,#f0bd591f,#2e86ff1a);border:1px solid #f0bd594d;border-radius:14px;flex:none;font:800 22px/1 inherit}.document-viewer header div{gap:3px;min-width:0;display:grid}.document-viewer header span{color:var(--gold);letter-spacing:.14em;font-size:8px;font-weight:900}.document-viewer header strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.document-download-button{color:#07101e;white-space:nowrap;background:linear-gradient(135deg,#ffd878,#e7ad3f);border:1px solid #f0bd596b;border-radius:14px;justify-content:center;align-items:center;min-height:44px;margin-left:auto;padding:0 16px;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex;box-shadow:0 10px 28px #e7ad3f33}.document-viewer main{overscroll-behavior:contain;place-items:center;min-height:0;padding:10px;display:grid;overflow:auto}.document-viewer img{object-fit:contain;border-radius:10px;max-width:100%;max-height:100%;box-shadow:0 20px 60px #00000080}.document-viewer iframe{background:#fff;border:0;border-radius:10px;width:100%;height:100%}.registration-cta{color:#fff;background:linear-gradient(135deg,#f0bd591c,#287ef421);border:1px solid #f0bd5952;border-radius:16px;grid-template-columns:40px 1fr;align-items:center;gap:2px 11px;min-height:60px;margin-top:12px;padding:11px 13px;text-decoration:none;display:grid}.registration-cta span{color:#07101d;background:linear-gradient(135deg,#ffdc77,#2f8cff);border-radius:12px;grid-row:1/3;place-items:center;width:40px;height:40px;font-size:9px;font-weight:950;display:grid}.registration-cta small{color:var(--muted)}.top-registration-link{color:var(--gold);background:#f0bd5914;border:1px solid #f0bd594d;border-radius:13px;padding:10px 14px;font-size:12px;font-weight:850;text-decoration:none}.registration-page,.approvals-page{color:#eef5ff;background:radial-gradient(circle at 20% 0,#1d69e138,#0000 34%),radial-gradient(circle at 100% 20%,#e2a02726,#0000 26%),#030913;min-height:100dvh}.registration-brand,.approvals-header{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);z-index:20;background:#030a14b8;border-bottom:1px solid #6ca6ff29;align-items:center;gap:12px;height:74px;padding:10px max(18px,50vw - 550px);display:flex;position:sticky;top:0}.registration-brand>a,.approvals-header>a{color:#fff;border:1px solid #ffffff1f;border-radius:13px;place-items:center;width:42px;height:42px;text-decoration:none;display:grid}.registration-brand img,.approvals-header img{object-fit:cover;border-radius:12px;width:45px;height:45px}.registration-brand div,.approvals-header div{display:grid}.registration-brand small,.approvals-header small{color:#8294ab}.registration-shell,.approvals-wrap{width:min(1040px,100% - 28px);margin:auto;padding:36px 0 80px}.registration-intro{text-align:center}.registration-intro>span,.approvals-title>span{color:#f2be55;letter-spacing:.16em;font-size:11px;font-weight:950}.registration-intro h1,.approvals-title h1{letter-spacing:-.055em;margin:10px 0 7px;font-size:clamp(30px,6vw,58px)}.registration-intro p,.approvals-title p{color:#98a8bd;max-width:620px;margin:0 auto}.fee-chip{background:#09172bbd;border:1px solid #f0bd5940;border-radius:18px;width:min(390px,100%);margin:24px auto;padding:15px;display:grid;box-shadow:0 18px 50px #00000040}.fee-chip small,.fee-chip em{color:#91a2b8;font-style:normal}.fee-chip strong{color:#ffd16b;font-size:27px}.registration-progress{grid-template-columns:repeat(5,1fr);gap:8px;margin:32px 0 18px;display:grid}.registration-progress button{color:#70849d;background:0 0;border:0;justify-items:center;gap:6px;padding:9px 4px;display:grid}.registration-progress b{background:#0a1728;border:1px solid #78a4dc38;border-radius:11px;place-items:center;width:35px;height:35px;display:grid}.registration-progress .active b,.registration-progresslkj{color:#06101e;background:linear-gradient(135deg,#ffd46d,#338dff)}.registration-progress .active,.registration-progress .done{color:#eaf3ff}.registration-progress span{font-size:10px;font-weight:800}.registration-step{background:linear-gradient(145deg,#0e1f36eb,#040d1af2);border:1px solid #64a4f433;border-radius:26px;padding:clamp(20px,5vw,42px);display:none;box-shadow:0 30px 80px #00000052}.registration-step.active{display:block}.registration-step h2{letter-spacing:-.04em;margin:8px 0 22px;font-size:clamp(24px,4vw,36px)}.registration-step h3{color:#f4c561;margin:30px 0 14px}.form-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.form-grid label,.dog-entry-list label,.approval-sign{color:#b8c7da;gap:7px;font-size:13px;font-weight:750;display:grid}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea,.dog-entry-list input,.dog-entry-list select,.approval-sign input{color:#fff;width:100%;min-height:52px;font:inherit;background:#040e1dcc;border:1px solid #70aaf238;border-radius:14px;padding:12px 14px}.-placeholder{color:#5d7088}.choice-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px;display:grid}.choice-grid label{cursor:pointer}.choice-grid input{opacity:0;position:absolute}.choice-grid span{background:#061223b3;border:1px solid #69a4ec2e;border-radius:18px;align-content:center;gap:5px;min-height:100px;padding:18px;display:grid}.-choice-grid input:checked+span{background:linear-gradient(145deg,#e8b13d29,#287eef21);border-color:#edbb51;box-shadow:0 0 0 2px #ebb74514}.choice-grid small,.form-note p{color:#8fa1b8}.form-note{background:#f0bd5512;border-left:3px solid #f0bd55;border-radius:0 14px 14px 0;margin-top:18px;padding:15px}.dog-entry-list{gap:12px;display:grid}.dog-entry-list fieldset{background:#040f1e73;border:1px solid #639fec33;border-radius:18px;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px;display:grid}.dog-entry-list legend{color:#f3c45e;padding:0 8px;font-weight:900}.dog-entry-list button,.add-another{color:#f4c666;font:inherit;background:#efb84412;border:1px solid #efb84442;border-radius:12px;font-weight:800}.add-another{margin-top:12px;padding:13px 18px}.rules-list{gap:9px;display:grid}.rule-check{color:#cbd6e4;background:#ffffff06;border:1px solid #669fe524;border-radius:14px;grid-template-columns:26px 1fr;align-items:start;gap:10px;padding:13px;line-height:1.45;display:grid}.rule-check input{accent-color:#eab547;width:20px;height:20px}.signature-wrap{grid-template-columns:1fr auto;gap:7px;margin-top:12px;display:grid}.signature-wrap canvas{touch-action:none;background:#f8fbff;border:2px dashed #4089e459;border-radius:18px;grid-column:1/-1;width:100%;height:180px}.signature-wrap span{color:#90a2b8}.signature-wrap button{color:#f0bd55;background:0 0;border:0}.registration-actions{justify-content:space-between;gap:12px;margin-top:20px;display:flex}.registration-actions button,.registration-success a,.document-button{color:#fff;background:linear-gradient(135deg,#267ce6,#174aa9);border:1px solid #69a5f040;border-radius:14px;place-items:center;min-height:52px;padding:0 20px;font-weight:850;text-decoration:none;display:inline-grid}.registration-actions button:first-child{background:#ffffff0d}.registration-error{color:#ff9cab;background:#b722391f;border:1px solid #ff5b6d59;border-radius:13px;margin-top:15px;padding:13px}.registration-success{text-align:center;width:min(560px,100% - 28px);margin:auto;padding:9vh 28px}.registration-success img{object-fit:cover;border-radius:28px;width:150px;height:190px}.registration-success span{color:#f3bf56;letter-spacing:.15em;margin-top:24px;font-weight:950;display:block}.registration-success h1{font-size:44px}.registration-success p{color:#a4b3c6;line-height:1.7}.registration-success a{margin-top:20px}.handler-detail-list fieldset{display:block}.handler-detail-list fieldset>h3:first-of-type{margin-top:10px}.handler-detail-list fieldset>button{margin-top:18px;padding:12px 16px}.document-handler-profile{break-inside:avoid;border:1px solid #d9e1ec;border-radius:12px;margin:0 0 18px;padding:14px}.document-handler-profile h3{color:#17345b;margin:0 0 12px}.approvals-title{text-align:left;margin-bottom:25px}.approval-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.approval-card{background:linear-gradient(145deg,#0d1d32eb,#050e1bf2);border:1px solid #5f9eee2e;border-radius:20px;padding:20px;box-shadow:0 18px 46px #00000040}.approval-card>div,.approval-card footer{justify-content:space-between;gap:10px;display:flex}.approval-card span{color:#f0bd55;font-size:10px;font-weight:900}.approval-card>div b{color:#6faeff;font-size:10px}.approval-card h2{margin:18px 0 5px}.approval-card p{color:#93a5bc}.approval-card footer{align-items:center;margin-top:18px}.approval-card i{color:#f5c761;text-transform:uppercase;background:#efba481a;border-radius:999px;padding:6px 10px;font-size:10px;font-style:normal}.approval-card footer button{color:#fff;background:0 0;border:0;font-weight:850}.approval-modal{z-index:100;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#00050dd1;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.approval-modal>section{background:#071426;border:1px solid #68a6f33d;border-radius:24px;width:min(740px,100%);max-height:calc(100dvh - 30px);padding:28px;position:relative;overflow:auto}.approval-close{color:#fff;background:#ffffff12;border:0;border-radius:12px;width:40px;height:40px;position:absolute;top:16px;right:16px}.approval-summary{grid-template-columns:1fr 1fr;gap:8px;margin:20px 0;display:grid}.approval-summary span{background:#ffffff09;border-radius:12px;gap:4px;padding:11px;display:grid}.approval-summary small{color:#7f92aa;text-transform:capitalize}.approval-sign{margin-top:20px}.approval-actions{grid-template-columns:1fr 2fr;gap:10px;margin-top:15px;display:grid}.approval-actions button{color:#fff;background:#ffffff0d;border:1px solid #f0bd5940;border-radius:14px;min-height:52px;font-weight:850}.approval-actions button:last-child{color:#06101e;background:linear-gradient(135deg,#f4cb68,#3b90ff)}.signed-document-screen{background:#111827;min-height:100dvh;padding:78px 15px 40px}.document-toolbar{z-index:20;color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#040b15ed;justify-content:space-between;align-items:center;height:62px;padding:8px max(15px,50vw - 460px);display:flex;position:fixed;inset:0 0 auto}.document-toolbar button{color:#fff;background:#ffffff0f;border:1px solid #f0bd594d;border-radius:11px;padding:11px 14px}.signed-document{color:#172234;background:#fff;width:min(900px,100%);margin:auto;padding:48px;box-shadow:0 25px 80px #00000080}.signed-document>header{border-bottom:4px solid #d6a63b;grid-template-columns:95px 1fr auto;align-items:center;gap:20px;padding-bottom:24px;display:grid}.signed-document>header img{object-fit:cover;border-radius:15px;width:92px;height:112px}.signed-document>header span{color:#b47b12;letter-spacing:.12em;font-weight:900}.signed-document>header h1{margin:4px 0;font-size:31px}.signed-document>header p{color:#536277;margin:0}.signed-document>header>b{color:#0b633f;background:#d9f5e7;border-radius:999px;padding:9px 12px;font-size:11px}.document-identity,.document-data{grid-template-columns:1fr 1fr;gap:8px;margin:22px 0;display:grid}.document-identity div,.document-data span{background:#f1f5f9;border-radius:10px;padding:12px}.signed-document small{color:#718096;letter-spacing:.08em;font-size:9px;font-weight:900;display:block}.signed-document h2{color:#122444;border-bottom:1px solid #dbe3ed;margin:28px 0 10px;padding-bottom:7px;font-size:17px}.document-table{gap:6px;display:grid}.document-table div{border:1px solid #e1e7ef;border-radius:9px;justify-content:space-between;padding:10px 12px;display:flex}.document-rules{columns:2;column-gap:30px;padding-left:20px;font-size:10px;line-height:1.45}.document-rules li{break-inside:avoid;margin-bottom:7px}.document-declarations p{background:#f8fafc;border-left:3px solid #d7a535;padding:9px 10px;font-size:10px}.document-signatures{grid-template-columns:1fr 1fr;gap:14px;margin-top:30px;display:grid}.document-signatures>div{border:1px solid #dce4ee;border-radius:12px;align-content:start;min-height:150px;padding:15px;display:grid}.document-signatures img{object-fit:contain;width:100%;height:75px}.document-signatures .approved{background:#f1fbf6;border-color:#9bdfbd}.document-signatures strong{margin:24px 0 8px;font-family:cursive;font-size:22px}.document-signatures time{color:#68788c;font-size:10px}.signed-document>footer{text-align:center;color:#66768a;border-top:2px solid #d6a63b;margin-top:30px;padding-top:14px;font-size:10px}.document-loading{color:#fff;background:#081322;place-items:center;min-height:100dvh;display:grid}@media (max-width:700px){.registration-shell,.approvals-wrap{width:min(100% - 18px,1040px);padding-top:20px}.registration-progress{gap:2px}.registration-progress span{font-size:7px}.registration-step{border-radius:20px;padding:20px 15px}.form-grid,.choice-grid,.approval-summary{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.dog-entry-list fieldset{grid-template-columns:1fr}.top-registration-link{display:none}.signed-document{padding:22px 16px}.signed-document>header{grid-template-columns:65px 1fr}.signed-document>header img{width:62px;height:78px}.signed-document>header>b{grid-column:1/-1;justify-self:start}.document-identity,.document-data,.document-signatures{grid-template-columns:1fr}.document-rules{columns:1}.document-toolbar strong{display:none}}@media print{.document-toolbar{display:none}.signed-document-screen{background:#fff;padding:0}.signed-document{width:100%;box-shadow:none;padding:12mm}.document-rules{columns:2}.signed-document{font-size:10pt}@page{size:A4;margin:0}}.signed-document{isolation:isolate;position:relative}.signed-document:before{content:"";z-index:-1;clip-path:polygon(50% 0,96% 15%,91% 74%,50% 100%,9% 74%,4% 15%);opacity:.055;pointer-events:none;background:url(/justice-kennels-logo.jpeg) 50%/cover no-repeat;position:absolute;inset:19% 20% 18%}.signed-document>*{position:relative}@media print{.signed-document{-webkit-print-color-adjust:exact;print-color-adjust:exact}.signed-document:before{position:fixed;inset:19% 20% 18%}}.profile-details-panel{background:#071427e0;border:1px solid #5197ff33;border-radius:20px;margin-top:18px;padding:18px}.profile-details-grid,.profile-details-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.profile-details-grid span,.profile-details-form label{background:#ffffff09;border:1px solid #7da8e229;border-radius:12px;padding:11px}.profile-details-grid small{color:#8fa5c2;font-size:10px;display:block}.profile-details-grid strong{color:#eef5ff;overflow-wrap:anywhere;margin-top:4px;font-size:12px;display:block}.profile-details-form label{color:#9fb1c8;gap:6px;font-size:11px;font-weight:800;display:grid}.profile-details-form input,.profile-details-form textarea{color:#fff;background:#071427;border:1px solid #639ae547;border-radius:10px;width:100%;padding:10px}.profile-details-form .primary-button{grid-column:1/-1}.profile-save-message{color:#3be0a3;font-size:12px;font-weight:800}.dog-profile-details-floating{z-index:95;border-radius:22px;width:min(520px,100vw - 36px);max-height:55dvh;position:fixed;bottom:18px;right:18px;overflow:auto;box-shadow:0 22px 70px #0000009e}@media (max-width:700px){.profile-details-grid,.profile-details-form{grid-template-columns:1fr}.dog-profile-details-floating{width:calc(100vw - 16px);max-height:48dvh;bottom:8px;right:8px}.profile-details-panel{margin-top:0;padding:14px}}.dog-drawer{scrollbar-gutter:stable;background:linear-gradient(155deg,#081426fb,#02070ffe);width:min(1180px,100vw - 32px);padding:24px 28px 34px}.dog-drawer-grid{grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);align-items:start;gap:16px;display:grid}.dog-drawer-main,.dog-drawer-side{min-width:0}.dog-drawer .profile-details-panel{width:auto;max-height:none;margin-top:16px;position:static;overflow:visible}.scan-board{background:linear-gradient(145deg,#10233df0,#050f1df5);border-color:#efbc4e47;padding:22px;position:sticky;top:0;box-shadow:0 24px 70px #00000057,inset 0 1px #ffffff12}.scan-board>h3{margin:7px 0 6px;font-size:22px}.scan-board>p{color:#91a6c2;margin:0;font-size:12px;line-height:1.55}.scan-board .document-page-picker label,.scan-board .drawer-actions button{border-radius:14px;min-height:50px}.scan-board .upload-zone{background:radial-gradient(circle at 50% 0,#307ce826,#0000 65%),#020a158f;border:1px dashed #529cff59}.dog-drawer .document-view-actions{grid-column:2/-1}.dog-drawer .document-view-actions .text-button{background:linear-gradient(135deg,#2769c738,#e8b33e1a);border-radius:12px;min-height:42px}@media (max-width:760px){.drawer-backdrop{align-items:stretch;padding:0}.dog-drawer{width:100%;height:100dvh;max-height:none;padding:14px 12px calc(28px + env(safe-area-inset-bottom));border:0;border-radius:0;margin:0}.dog-drawer-grid{flex-direction:column;gap:0;display:flex}.dog-drawer-main,.dog-drawer-side{width:100%}.dog-drawer-side{order:-1}.scan-board{border-radius:20px;margin-top:12px;padding:16px;position:static}.dog-drawer .drawer-hero{grid-template-columns:82px minmax(0,1fr);padding:13px}.dog-drawer .drawer-hero img{width:82px;height:104px}.dog-drawer .drawer-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:12px}.dog-drawer .drawer-facts span{min-width:0}.dog-drawer .drawer-facts strong{overflow-wrap:anywhere;font-size:9px}.dog-drawer .drawer-section{padding:15px}.dog-drawer .document-row{grid-template-columns:42px minmax(0,1fr);gap:9px}.dog-drawer .document-row>.status-pill{grid-column:2}.dog-drawer .document-view-actions{grid-column:1/-1}.dog-drawer .document-page-picker,.dog-drawer .drawer-actions,.dog-drawer .profile-details-grid,.dog-drawer .profile-details-form{grid-template-columns:1fr}.dog-drawer .drawer-close{float:right;z-index:5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#061324eb;position:sticky;top:0}}.handler-selector .family-handler-card{cursor:pointer;transition:border-color .18s,background .18s,transform .18s}.handler-selector .family-handler-card:hover{transform:translateY(-1px)}.handler-selector .family-handler-card.selected{background:linear-gradient(135deg,#f2be5021,#2d7eed1f);border-color:#f2be5094;box-shadow:inset 3px 0 #f2be50,0 12px 35px #0003}.handler-selector .family-handler-card.selected:after{content:"Viewing";color:#f6c861;text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:900}body:has(.public-home){color:#f7f9ff;background:#02050b;padding:0;overflow-x:hidden}.public-home{color:#f7f9ff;background:radial-gradient(circle at 70% 18%,#1c74ff26,#0000 28%),#02050b;min-height:100dvh;position:relative;overflow:hidden}.public-nav{z-index:30;-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%);background:linear-gradient(120deg,#050d1bc2,#0d1f398f);border:1px solid #7bb4ff38;border-radius:22px;justify-content:space-between;align-items:center;gap:18px;width:min(1440px,100% - 34px);min-height:76px;padding:10px 12px 10px 14px;display:flex;position:absolute;top:17px;left:50%;transform:translate(-50%);box-shadow:0 24px 70px #0000006b,inset 0 1px #ffffff1a}.public-brand{color:#fff;align-items:center;gap:11px;text-decoration:none;display:flex}.public-brand img{object-fit:cover;object-position:center 24%;border:1px solid #f6c24c80;border-radius:15px;width:52px;height:52px;box-shadow:0 0 26px #1d85ff3d}.public-brand span{gap:2px;display:grid}.public-brand strong{letter-spacing:.06em;font-size:14px}.public-brand small{color:#72baff;letter-spacing:.18em;font-size:9px}.public-nav nav{align-items:center;gap:8px;display:flex}.public-nav nav>a,.public-nav nav>button{color:#fff;cursor:pointer;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 19px;font:850 13px/1 inherit;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:inline-flex}.public-nav nav>a:hover,.public-nav nav>button:hover{transform:translateY(-2px)}.nav-login{background:#ffffff0e;border:1px solid #7eb7ff42}.nav-signup{background:linear-gradient(135deg,#f7cb67,#d58a18);border:1px solid #ffd6737a;box-shadow:0 12px 30px #de951e40,inset 0 1px #ffffff8c;color:#07101d!important}.public-nav .nav-download{background:linear-gradient(135deg,#2589ff,#174ebc);border:1px solid #5cadff8c;box-shadow:0 13px 32px #1966e147,inset 0 1px #ffffff38}.cinematic-hero{isolation:isolate;align-items:center;min-height:100svh;padding:150px clamp(22px,7vw,105px) 76px;display:flex;position:relative;overflow:hidden}.hero-media,.hero-vignette{z-index:-3;position:absolute;inset:0}.hero-media img,.hero-media video{object-fit:cover;object-position:center 45%;filter:saturate(1.12)contrast(1.06)brightness(.92);width:100%;height:100%;animation:18s ease-in-out infinite alternate heroDrift;display:block}.hero-vignette{z-index:-2;background:linear-gradient(90deg,#01040af0 0%,#02070fb3 42%,#02060d1f 74%),linear-gradient(0deg,rgbaférgba(2,5,11,.97),transparent 42%),radial-gradient(circle at 72% 40%,transparent 5%,#01040a2b 68%)}.cinematic-hero:before{content:"";z-index:-1;background:linear-gradient(#469bff11 1px,#0000 1px) 0 0/72px 72px,linear-gradient(90deg,#469bff11 1px,#0000 1px) 0 0/72px 72px,radial-gradient(circle at 92% 8%,#ffbe3a29,#0000 22%) 0 0/100% 100%,radial-gradient(circle at 10% 92%,#2288ff2e,#0000 24%) 0 0/100% 100%;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000000a8,#0000002e 76%,#0000);mask-image:linear-gradient(90deg,#000000a8,#0000002e 76%,#0000)}.hero-cinematic-frame{z-index:1;pointer-events:none;border:1px solid #75b7ff21;border-radius:34px;position:absolute;inset:105px 24px 28px;box-shadow:inset 0 1px #ffffff0d,0 0 80px #0f65e014}.hero-cinematic-frame i{display:block;position:absolute}.hero-cinematic-frame i:first-child{background:linear-gradient(90deg,#f5bf50,#0000);width:96px;height:2px;top:-1px;left:28px;box-shadow:0 0 16px #f5bf50a6}.hero-cinematic-frame i:nth-child(2){background:linear-gradient(#0000,#4ba8ff);width:2px;height:90px;bottom:30px;right:-1px;box-shadow:0 0 16px #4ba8ff99}.hero-cinematic-frame i:nth-child(3){border:2px solid #f5c35d;border-radius:50%;width:11px;height:11px;top:26px;right:28px;box-shadow:0 0 20px #f5c35db3}@keyframes heroDrift{0%{transform:scale(1.02)}to{transform:scale(1.09)translate(-1.2%,.6%)}}.hero-content{z-index:2;width:min(790px,70%);position:relative}.hero-identity{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#030a167a;border:1px solid #f5c65d52;border-radius:16px;width:max-content;margin:0 0 24px;padding:13px 18px;display:grid;box-shadow:inset 0 1px #ffffff14}.hero-identity strong{letter-spacing:.09em;font-size:clamp(19px,2vw,27px)}.hero-identity small{color:#f5c65d;letter-spacing:.18em;margin-top:4px;font-size:10px;font-weight:900}.hero-identity small i{color:#58adff;font-style:normal}.hero-kicker{color:#f5c65d;letter-spacing:.18em;align-items:center;gap:10px;font-size:11px;font-weight:900;display:inline-flex}.hero-kicker i{background:#399dff;border-radius:50%;width:8px;height:8px;box-shadow:0 0 20px #399dff}.hero-content h1{letter-spacing:-.075em;text-wrap:balance;margin:22px 0 20px;font-size:clamp(55px,7.6vw,112px);line-height:.88}.hero-content h1 em{color:#0000;background:linear-gradient(100deg,#69b8ff 5%,#fff 42%,#f5c15b 86%);-webkit-background-clip:text;background-clip:text;font-style:normal}.hero-content>p{color:#bac8da;max-width:680px;margin:0;font-size:clamp(16px,1.5vw,21px);line-height:1.6}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.hero-actions a{color:#fff;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#07122380;border:1px solid #77b5ff45;border-radius:17px;justify-content:center;align-items:center;gap:18px;min-height:58px;padding:0 24px;font-weight:850;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 16px 45px #00000047,inset 0 1px #ffffff17}.hero-actions a:first-child{color:#07101d;background:linear-gradient(135deg,#ffe28a,#e6a42f);border-color:#ffd77085;box-shadow:0 17px 40px #df97213b,inset 0 1px #fff9}.hero-actions a:hover{transform:translateY(-3px);box-shadow:0 22px 52px #0000005c}.launch-banner{-webkit-backdrop-filter:blur(26px)saturate(150%);backdrop-filter:blur(26px)saturate(150%);background:linear-gradient(145deg,#0c1e37b3,#050c18d1);border:1px solid #f9c75b6b;border-radius:22px;gap:4px;min-width:270px;padding:22px 24px;display:grid;position:absolute;bottom:72px;right:clamp(22px,6vw,90px);box-shadow:0 25px 80px #00000080,0 0 45px #227eff1f,inset 0 1px #ffffff1c}.launch-banner span{color:#f5c45d;letter-spacing:.18em;font-size:9px;font-weight:950}.launch-banner strong{letter-spacing:-.045em;font-size:30px}.launch-banner small{color:#75baff;font-size:12px;font-weight:800}.hero-reel-link{color:#d8e8ff;font-size:12px;font-weight:800;text-decoration:none;position:absolute;top:126px;right:clamp(22px,6vw,90px)}.overview-section,.access-section{width:min(1280px,100% - 40px);margin:0 auto;padding:110px 0}.overview-intro{max-width:850px}.overview-intro>span,.access-story>span{color:#f3bf53;letter-spacing:.19em;font-size:10px;font-weight:950}.overview-intro h2,.access-story h2{letter-spacing:-.065em;margin:14px 0 18px;font-size:clamp(39px,5.6vw,75px);line-height:.98}.overview-intro p,.access-story>p{color:#93a6be;max-width:690px;margin:0;font-size:17px;line-height:1.7}.overview-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:52px;display:grid}.overview-grid article{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:linear-gradient(145deg,#0d1f38d1,#040c18d1);border:1px solid #66a6f633;border-radius:24px;min-height:245px;padding:26px;transition:all .22s;position:relative;overflow:hidden;box-shadow:0 24px 70px #0000003d,inset 0 1px #ffffff14}.overview-grid article:after{content:"";border:1px solid #f6c14e26;border-radius:50%;width:150px;height:150px;position:absolute;bottom:-95px;right:-95px;box-shadow:0 0 0 25px #2e87ff06}.overview-grid article:hover{border-color:#f3be4966;transform:translateY(-7px)}.overview-grid b{color:#63afff;letter-spacing:.14em;font-size:11px}.overview-grid h3{margin:48px 0 12px;font-size:22px}.overview-grid p{color:#8fa3bc;margin:0;line-height:1.6}.award-strip{background:linear-gradient(90deg,#efb43626,#2075ec1a);border:1px solid #f4c04d4d;border-radius:20px;align-items:center;gap:16px;margin-top:18px;padding:18px 22px;display:flex;box-shadow:inset 0 1px #ffffff14}.award-strip strong{color:#f6c65e}.award-strip span{color:#a5b5ca}.award-strip b{color:#6db6ff;margin-left:auto}.access-section{grid-template-columns:1.15fr .85fr;align-items:center;gap:70px;padding-top:80px;display:grid}.access-story>div{background:#12274585;border:1px solid #63a5f83d;border-radius:17px;gap:4px;width:max-content;margin-top:35px;padding:17px 20px;display:grid;box-shadow:inset 0 1px #ffffff12}.access-story>div strong{color:#6bb7ff;font-size:22px}.access-story>div small{color:#f1bf57;letter-spacing:.13em;font-size:9px;font-weight:900}.public-login-card{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:linear-gradient(145deg,#0f2038e0,#050d1aeb);border-color:#64aaff40;border-radius:28px;width:100%;padding:40px;box-shadow:0 35px 100px #0006,inset 0 1px #ffffff17}.public-login-card .login-copy h2{letter-spacing:-.055em;margin:14px 0 8px;font-size:42px}.public-login-card .login-copy p{font-size:14px}.public-login-card .login-form{margin-top:27px}.public-login-card .login-form input{min-height:57px}.public-login-card .login-form .primary-button{background:linear-gradient(135deg,#2b91ff,#1545ac);border-color:#6bb4ff7a;min-height:58px;box-shadow:0 17px 38px #195cd352,inset 0 1px #ffffff38}.public-footer{background:#071120bd;border:1px solid #68a5ee2e;border-radius:20px;align-items:center;gap:13px;width:min(1280px,100% - 40px);margin:0 auto 28px;padding:20px 22px;display:flex}.public-footer img{object-fit:cover;border-radius:14px;width:52px;height:52px}.public-footer span{gap:3px;display:grid}.public-footer strong{font-size:12px}.public-footer small{color:#8396ad}.public-footer a{color:#f4c35d;margin-left:auto;font-weight:850;text-decoration:none}@media (max-width:900px){.public-nav{width:calc(100% - 20px);top:10px}.public-brand span{display:none}.public-nav nav>button,.public-nav nav>a{padding-inline:13px}.cinematic-hero{align-items:flex-start;min-height:860px;padding:130px 22px 210px}.hero-content{width:100%;margin-top:75px}.hero-content h1{font-size:clamp(50px,12vw,80px)}.hero-vignette{background:linear-gradient(#02060d59,#02070f9e 42%,#01040afa 100%),linear-gradient(90deg,#01040abd,#0000)}.launch-banner{min-width:0;bottom:68px;left:22px;right:22px}.hero-reel-link{top:auto;bottom:32px;right:22px}.overview-grid{grid-template-columns:1fr 1fr}.access-section{grid-template-columns:1fr;gap:42px}.overview-section,.access-section{padding-block:75px}}@media (max-width:560px){.public-nav{min-height:66px;padding:8px}.public-brand img{width:47px;height:47px}.public-nav nav{gap:5px}.public-nav nav>a,.public-nav nav>button{min-height:43px;padding:0 11px;font-size:11px}.public-nav .nav-download span{display:none}.public-nav .nav-download{width:43px;padding:0;font-size:18px}.cinematic-hero{min-height:860px;padding:112px 18px 190px}.hero-content{margin-top:36px}.hero-identity{text-align:center;width:100%;margin-bottom:18px}.hero-identity strong{font-size:21px}.hero-identity small{letter-spacing:.14em;font-size:9px}.hero-kicker{font-size:9px;line-height:1.5}.hero-content h1{margin-top:16px;font-size:clamp(45px,15vw,68px);line-height:.91}.hero-content>p{font-size:16px;line-height:1.55}.hero-actions{display:grid}.hero-actions a{width:100%;min-height:54px}.launch-banner{padding:18px;bottom:48px;left:16px;right:16px}.launch-banner strong{font-size:27px}.hero-reel-link{display:none}.overview-section,.access-section{width:calc(100% - 28px);padding:62px 0}.overview-intro h2,.access-story h2{font-size:39px}.overview-grid{grid-template-columns:1fr;margin-top:35px}.overview-grid article{min-height:190px}.overview-grid h3{margin-top:35px}.award-strip{flex-direction:column;align-items:flex-start}.award-strip b{margin-left:0}.public-login-card{border-radius:22px;padding:26px 18px}.public-login-card .login-copy h2{font-size:36px}.public-footer{align-items:flex-start;width:calc(100% - 20px)}.public-footer small{font-size:10px}.public-footer a{display:none}}@media (prefers-reduced-motion:reduce){.hero-media img,.hero-media video{animation:none}.public-nav nav>a,.public-nav nav>button,.hero-actions a,.overview-grid article{transition:none}}.kennels-story{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);align-items:center;gap:72px;width:min(1320px,100% - 48px);margin:0 auto;padding:110px 0;display:grid}.kennels-story-copy>span,.kennels-promise>span{color:#f5c65d;letter-spacing:.2em;font-size:11px;font-weight:900}.kennels-story-copy h2{letter-spacing:-.06em;margin:18px 0 24px;font-size:clamp(46px,6vw,84px);line-height:.95}.kennels-story-copy h2 em{color:#65b6ff;font-style:normal}.kennels-story-copy>p{color:#aebed2;max-width:790px;margin:0;font-size:18px;line-height:1.75}.training-pillars{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:40px;display:grid}.training-pillars article{background:linear-gradient(145deg,#0e1f39b8,#060d1acc);border:1px solid #67abff33;border-radius:22px;flex-direction:column;min-height:170px;padding:22px;display:flex;box-shadow:inset 0 1px #ffffff0f}.training-pillars b{color:#5faeff;font-size:12px}.training-pillars strong{margin-top:auto;font-size:21px}.training-pillars small{color:#91a5bf;margin-top:7px;font-size:13px;line-height:1.45}.kennels-promise{text-align:center;background:radial-gradient(circle at 50% 24%,#1f7bff36,#0000 38%),linear-gradient(160deg,#0e1d34d1,#040913f0);border:1px solid #f8c34947;border-radius:36px;flex-direction:column;justify-content:center;align-items:center;min-height:500px;padding:42px;display:flex;box-shadow:0 30px 90px #00000061,inset 0 1px #ffffff14}.kennels-promise img{object-fit:cover;object-position:center 23%;border-radius:32px;width:180px;height:180px;margin-bottom:28px;box-shadow:0 0 55px #2684ff38}.kennels-promise strong{letter-spacing:.04em;margin-top:14px;font-size:clamp(27px,3vw,42px);line-height:1.08}.kennels-promise p{color:#aebed2;margin:18px 0 0;line-height:1.55}@media (max-width:900px){.kennels-story{grid-template-columns:1fr;gap:34px;padding:78px 0}.training-pillars{grid-template-columns:repeat(3,1fr)}.kennels-promise{min-height:420px}}@media (max-width:560px){.kennels-story{width:calc(100% - 28px);padding:64px 0}.kennels-story-copy h2{font-size:43px}.kennels-story-copy>p{font-size:16px}.training-pillars{grid-template-columns:1fr}.training-pillars article{min-height:135px}.kennels-promise{border-radius:28px;min-height:390px;padding:28px 20px}.kennels-promise img{width:150px;height:150px}}.legacy-section{grid-template-columns:.85fr 1.15fr;align-items:start;gap:90px;width:min(1280px,100% - 48px);margin:0 auto;padding:120px 0;display:grid}.legacy-heading{position:sticky;top:30px}.legacy-heading>span,.philosophy-copy>span,.community-copy>span,.training-journey span{color:#f5c65d;letter-spacing:.2em;font-size:11px;font-weight:950}.legacy-heading h2,.philosophy-copy h2,.community-copy h2,.training-journey h2{letter-spacing:-.065em;margin:18px 0 24px;font-size:clamp(46px,5.8vw,82px);line-height:.94}.legacy-heading h2 em,.community-copy h2 em,.training-journey h2 em{color:#67b7ff;font-style:normal}.legacy-heading>p,.philosophy-copy>p,.community-copy>p{color:#a8bad0;margin:0;font-size:17px;line-height:1.75}.legacy-timeline{display:grid}.legacy-timeline article{border-left:1px solid #529fff47;grid-template-columns:145px 1fr;gap:24px;padding:8px 0 40px 44px;display:grid;position:relative}.legacy-timeline article:before{content:"";background:#f4c35c;border-radius:50%;width:13px;height:13px;position:absolute;top:10px;left:-7px;box-shadow:0 0 0 7px #f4c35c17,0 0 28px #f4c35c73}.legacy-timeline time{color:#67b7ff;letter-spacing:.13em;font-size:12px;font-weight:950}.legacy-timeline strong{margin-bottom:10px;font-size:25px;display:block}.legacy-timeline p{color:#93a7bf;margin:0;line-height:1.7}.handler-philosophy{background:radial-gradient(circle at 14% 45%,#2585ff33,#0000 28%),linear-gradient(140deg,#0c1d35eb,#030913f5);border:1px solid #66adff38;border-radius:42px;grid-template-columns:.55fr 1.45fr;align-items:center;gap:80px;width:min(1400px,100% - 34px);margin:0 auto;padding:95px clamp(28px,7vw,105px);display:grid;box-shadow:0 40px 120px #00000061,inset 0 1px #ffffff14}.philosophy-number{text-align:center;flex-direction:column;align-items:center;display:flex}.philosophy-number span,.philosophy-number small{color:#f5c65d;letter-spacing:.26em;font-size:11px;font-weight:950}.philosophy-number strong{letter-spacing:-.08em;color:#0000;background:linear-gradient(150deg,#fff,#64b6ff 50%,#e7a633);-webkit-background-clip:text;background-clip:text;font-size:clamp(75px,10vw,150px);line-height:.9}.philosophy-copy h2{font-size:clamp(50px,7vw,95px)}.philosophy-copy>p{max-width:800px;margin-top:15px}.family-statement{color:#f5ca70;border-top:1px solid #f5c65d40;margin-top:30px;padding:22px 0;font-size:20px;line-height:1.5;display:block}.community-section{grid-template-columns:1fr 1fr;align-items:center;gap:85px;width:min(1280px,100% - 48px);margin:0 auto;padding:125px 0;display:grid}.community-copy>p+p{margin-top:18px}.community-values{gap:12px;display:grid}.community-values article{background:linear-gradient(145deg,#0d1f38b8,#040c18c7);border:1px solid #68abff2e;border-radius:22px;grid-template-columns:54px 1fr;align-items:start;gap:18px;padding:24px;display:grid;box-shadow:inset 0 1px #ffffff0f}.community-values b{color:#64b5ff;letter-spacing:.12em;font-size:12px}.community-values strong{font-size:21px}.community-values p{color:#91a5bd;margin:6px 0 0;line-height:1.55}.training-journey{grid-template-columns:1fr 1fr;align-items:center;gap:80px;width:min(1280px,100% - 48px);margin:0 auto;padding:20px 0 125px;display:grid}.training-journey blockquote{color:#dce9f9;background:linear-gradient(145deg,#f4ba3d1c,#1868dd17);border:1px solid #f5c25045;border-radius:30px;margin:0;padding:38px;font-size:clamp(22px,2.5vw,34px);font-weight:650;line-height:1.45;box-shadow:inset 0 1px #ffffff14}.training-journey h2{font-size:clamp(45px,5vw,70px)}@media (max-width:900px){.legacy-section,.community-section,.training-journey{grid-template-columns:1fr;gap:45px}.legacy-heading{position:static}.handler-philosophy{grid-template-columns:1fr;gap:45px}.philosophy-number{text-align:left;align-items:flex-start}.legacy-timeline article{grid-template-columns:120px 1fr}.community-section{padding-block:85px}}@media (max-width:560px){.legacy-section,.community-section,.training-journey{width:calc(100% - 28px);padding-block:68px}.legacy-heading h2,.philosophy-copy h2,.community-copy h2,.training-journey h2{font-size:42px}.legacy-timeline article{grid-template-columns:1fr;gap:8px;padding-left:25px}.legacy-timeline strong{font-size:21px}.handler-philosophy{border-radius:28px;width:calc(100% - 20px);padding:50px 22px}.philosophy-number strong{font-size:90px}.family-statement{font-size:18px}.community-values article{grid-template-columns:38px 1fr;padding:20px}.training-journey{gap:28px;padding-bottom:80px}.training-journey blockquote{border-radius:24px;padding:27px 22px;font-size:21px}}.hero-vignette{background:linear-gradient(90deg,#01040af0 0%,#02070fb3 42%,#02060d1f 74%),linear-gradient(#0000 58%,#02050bf7),radial-gradient(circle at 72% 40%,#0000 5%,#01040a2b 68%)}@media (max-width:900px){.hero-cinematic-frame{border-radius:26px;inset:92px 12px 20px}.hero-media video{object-position:center center;filter:saturate(1.1)contrast(1.05)brightness(.88)}}@media (max-width:560px){.hero-cinematic-frame{border-radius:22px;inset:82px 8px 14px}.hero-cinematic-frame i:first-child{width:68px;left:18px}.hero-cinematic-frame i:nth-child(3){top:18px;right:18px}.hero-media video{object-position:center center}}.public-home>section:not(.cinematic-hero){opacity:1!important;visibility:visible!important;content-visibility:visible!important;height:auto!important;min-height:0!important;margin-top:12px!important;margin-bottom:12px!important;transform:none!important}.public-home>section:not(.cinematic-hero),.public-home>footer{z-index:5!important;position:relative!important}.public-home .action-gallery,.public-home .community-legacy,.public-home .visit-training,.public-home .registration-showcase,.public-home .public-footer{background-color:#030a17e6;border-color:#70a7ff3b;box-shadow:0 24px 70px #0000007a,inset 0 1px #ffffff0f}@media (max-width:600px){.public-home>section:not(.cinematic-hero){margin-top:8px!important;margin-bottom:8px!important}.public-home .cinematic-hero{min-height:760px;padding-bottom:165px}}.public-footer .footer-credit{color:#fff;text-align:right;border-left:1px solid #70a7ff33;gap:2px;margin-left:auto;padding-left:22px;text-decoration:none;display:grid}.public-footer .footer-credit small{color:#8195af;letter-spacing:.12em;font-size:.6rem;font-weight:800}.public-footer .footer-credit strong{color:#f2c454;font-size:.76rem}.public-footer .footer-credit b{color:#65adff;font-size:.68rem}.public-footer .footer-register{margin-left:16px}@media (max-width:700px){.public-footer{flex-wrap:wrap}.public-footer .footer-credit{text-align:left;border-top:1px solid #70a7ff33;border-left:0;width:100%;margin:10px 0 0;padding:14px 0 0}.public-footer .footer-register{display:none}.public-footer .footer-credit small,.public-footer .footer-credit strong,.public-footer .footer-credit b{display:block}}@media (max-width:760px){.public-nav .nav-story,.public-nav .nav-training{display:none}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
