@import "https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap";@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--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-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--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{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.\!start{inset-inline-start:var(--spacing)!important}.start{inset-inline-start:var(--spacing)}.\!end{inset-inline-end:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.italic{font-style:italic}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);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,)}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--navy:var(--narilo-navy);--indigo:var(--narilo-purple);--cyan:var(--narilo-teal);--ink:var(--color-text);--muted:var(--color-text-secondary);--line:var(--color-border);--bg:var(--color-page)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-family-primary);color:var(--ink);background:var(--bg);margin:0}button{cursor:pointer;color:inherit;background:0 0;border:0}.brand{letter-spacing:2.5px;align-items:center;gap:10px;font-size:20px;font-weight:900;display:flex}.brand.light{color:#fff}.mark{align-items:flex-end;gap:3px;height:23px;display:inline-flex;transform:skew(-12deg)}.mark i{background:linear-gradient(#35e6d4,#3a64ed);border-radius:2px;width:5px}.mark i:first-child{height:13px}.mark i:nth-child(2){height:22px}.mark i:nth-child(3){height:16px}.btn{color:#fff;background:linear-gradient(135deg,#575ce8,#464ad1);border-radius:9px;padding:15px 22px;font-weight:750;transition:all .2s;box-shadow:0 10px 24px #4b50de36}.btn:hover{transform:translateY(-2px)}.btn.small{padding:11px 18px;font-size:13px}.public-nav{border-bottom:1px solid #e9ebf1;justify-content:space-between;align-items:center;height:78px;padding:0 max(5vw,28px);display:flex}.public-nav nav{align-items:center;gap:28px;display:flex}.public-nav nav>button:first-child{font-size:14px;font-weight:650}.hero{background:radial-gradient(circle at 85% 15%,#dbeafe,#0000 25%),linear-gradient(115deg,#fff 35%,#f4f6ff);grid-template-columns:1fr 1fr;align-items:center;gap:70px;min-height:650px;padding:76px max(6vw,40px);display:grid;overflow:hidden}.eyebrow,.page-head>div>p{letter-spacing:2px;color:var(--indigo);font-size:11px;font-weight:850}.eyebrow span{color:var(--cyan);margin-right:8px}.hero h1{letter-spacing:-4px;margin:24px 0;font-size:clamp(50px,5.5vw,80px);line-height:.99}.hero h1 em{color:var(--indigo);font-style:normal;position:relative}.hero h1 em:after{content:"";background:var(--cyan);border-radius:50%;height:7px;position:absolute;bottom:-5px;left:0;right:0;transform:rotate(-2deg)}.hero-copy>p{color:#667087;max-width:610px;font-size:18px;line-height:1.75}.hero-actions{align-items:center;gap:28px;margin:33px 0;display:flex}.hero-actions .btn span{margin-left:28px}.text-btn{font-weight:750}.trust{color:#777e91;flex-wrap:wrap;gap:20px;font-size:12px;display:flex}.hero-visual{min-height:490px;position:relative}.orb{border-radius:50%;position:absolute}.orb.one{background:#7075ed;width:360px;height:360px;top:2%;right:8%}.orb.two{background:#26d4c4;width:260px;height:260px;bottom:0;left:2%}.mock{background:#f9fafc;border-radius:18px;width:83%;max-width:480px;position:absolute;top:30px;left:7%;overflow:hidden;transform:rotate(-2deg);box-shadow:0 30px 70px #0c1b4840}.mock-top{color:#fff;background:#101c46;align-items:center;gap:8px;height:48px;padding:0 18px;font-size:10px;display:flex}.mock-top .mark{transform-origin:0;transform:scale(.55)skew(-12deg)}.mock-top>i{background:#25c9bb;border-radius:50%;width:18px;height:18px;margin-left:auto}.mock-body{padding:24px}.mock-body>small{color:var(--indigo);font-size:7px;font-weight:800}.mock-body h3{margin:6px 0 16px;font-size:20px}.mock-stats{grid-template-columns:1fr 1fr;gap:10px;display:grid}.mock-stats>div,.chart-card{background:#fff;border:1px solid #edf0f6;border-radius:8px;padding:14px}.mock-stats small{color:#7f8698;font-size:7px;display:block}.mock-stats b{margin:5px 0;font-size:25px;display:block}.mock-stats span{color:#1ba99c;font-size:7px}.chart-card{margin-top:10px}.chart-card>div:first-child{justify-content:space-between;font-size:9px;display:flex}.chart-card small{color:#8b91a3}.chart{border-bottom:1px solid #e9ebf2;align-items:flex-end;gap:10px;height:90px;margin-top:10px;display:flex}.chart i{background:linear-gradient(#5c61e6,#29cebf);border-radius:3px 3px 0 0;flex:1}.float-card{background:#fff;border-radius:12px;align-items:center;gap:10px;padding:14px 16px;display:flex;position:absolute;bottom:42px;right:0;box-shadow:0 18px 40px #08153630}.float-card div:nth-child(2){flex-direction:column;display:flex}.float-card strong{font-size:11px}.float-card small{color:#81889a;font-size:8px}.float-card>b{color:#14a899;font-size:12px}.mini-avatar{color:#089c90;background:#dff8f5;border-radius:50%;place-items:center;width:34px;height:34px;font-size:10px;font-weight:800;display:grid}.proof{background:var(--navy);color:#fff;justify-content:space-around;align-items:center;gap:35px;min-height:110px;padding:25px 7%;display:flex}.proof span{color:#8992ae}.proof strong{letter-spacing:4px;font-size:14px}.features{grid-template-columns:repeat(3,1fr);gap:50px;padding:80px 8%;display:grid}.features small{color:#22bfb1;font-weight:800}.features h3{font-size:23px}.features p{color:#747c90;line-height:1.7}.toast{z-index:99;color:#fff;background:#092239;border:1px solid #1eaa9d;border-radius:10px;padding:13px 20px;font-weight:700;position:fixed;top:22px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #0003}.auth-page{grid-template-columns:42% 58%;min-height:100vh;display:grid}.auth-brand{color:#fff;background:linear-gradient(145deg,#07132f,#121d4c);flex-direction:column;justify-content:space-between;padding:45px 11%;display:flex;position:relative;overflow:hidden}.auth-brand:after{content:"";border:1px solid #ffffff12;border-radius:50%;width:470px;height:470px;position:absolute;bottom:-180px;right:-170px;box-shadow:0 0 0 70px #ffffff05,0 0 0 140px #ffffff04}.auth-brand>div{z-index:1;position:relative}.auth-brand>div>span{color:#22cabc;font:90px/.5 Georgia}.auth-brand blockquote{margin:22px 0;font-family:Georgia,serif;font-size:29px;line-height:1.55}.auth-brand small{letter-spacing:2px;color:#24cbbc;font-weight:800}.auth-brand>p{color:#707994;font-size:11px}.auth-panel{place-items:center;padding:70px 8%;display:grid;position:relative}.back{color:#697086;font-size:12px;font-weight:700;position:absolute;top:35px;right:6%}.auth-panel form{width:min(420px,100%)}.form-heading>p{letter-spacing:2px;color:var(--indigo);font-size:11px;font-weight:850}.form-heading h2{margin:10px 0;font-size:38px}.form-heading>span:last-child{color:#767e91;margin-bottom:32px;line-height:1.6;display:block}.auth-panel label,.form-grid label{flex-direction:column;gap:9px;margin:18px 0;font-size:13px;font-weight:700;display:flex}.auth-panel input,.form-grid input,.form-grid select{background:#fff;border:1px solid #dfe2eb;border-radius:8px;outline:none;padding:14px}.auth-panel input:focus,.form-grid input:focus,.form-grid select:focus{border-color:#555be4;box-shadow:0 0 0 3px #555be412}.password{position:relative}.password input{width:100%}.password span{color:#9097a7;position:absolute;top:13px;right:15px}.check{align-items:center;flex-direction:row!important;font-weight:400!important}.check input{width:16px}.wide{justify-content:space-between;width:100%;display:flex}.form-switch{text-align:center;color:#777e90;margin-top:25px;font-size:13px}.form-switch button{color:var(--indigo);font-weight:750}.demo{text-align:center;color:#a0a5b2;font-size:11px}.mobile-mark{display:none}.app-shell{background:var(--bg);grid-template-columns:240px 1fr;min-height:100vh;display:grid}.app-shell aside{z-index:5;color:#fff;background:linear-gradient(#081431,#0c183a);flex-direction:column;width:240px;padding:34px 22px;display:flex;position:fixed;inset:0 auto 0 0}.app-shell aside .brand{padding:0 12px}.role{letter-spacing:2px;color:#697593;margin:38px 13px 18px;font-size:9px}.app-shell aside nav{flex-direction:column;gap:8px;display:flex}.app-shell aside nav button{text-align:left;color:#8e98b5;border-radius:8px;padding:13px 14px;font-size:13px;font-weight:650}.app-shell aside nav button span{margin-right:10px;font-size:19px}.app-shell aside nav button b{float:right;background:#26355d;border-radius:10px;padding:3px 7px;font-size:10px}.app-shell aside nav button.active{color:#fff;background:#26306c}.coach{border-top:1px solid #263251;align-items:center;gap:10px;margin-top:auto;padding-top:22px;display:flex}.avatar{color:#fff;background:#27336b;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-size:11px;font-weight:800;display:grid}.avatar.cyan,.stat-icon.cyan{color:#079b90;background:#dff9f6}.avatar.indigo,.stat-icon.indigo{color:#5056d9;background:#e8e9ff}.avatar.violet,.stat-icon.violet{color:#8255ca;background:#f1e9ff}.avatar.blue{color:#3683bd;background:#e1f1ff}.coach strong,.coach small{font-size:11px;display:block}.coach small{color:#76809e;margin-top:3px;font-size:9px}.coach>button{color:#73809e;margin-left:auto}.app-main{grid-column:2;padding:50px clamp(25px,4vw,64px)}.mobile-appbar{display:none}.page-head{justify-content:space-between;align-items:flex-end;margin-bottom:36px;display:flex}.page-head p{margin:0 0 11px}.page-head h1{letter-spacing:-1px;margin:0 0 8px;font-size:32px}.page-head small{color:var(--muted)}.stat-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.stat-grid>div{border:1px solid var(--line);background:#fff;border-radius:12px;padding:22px}.stat-icon{float:right;border-radius:9px;place-items:center;width:38px;height:38px;font-size:19px;display:grid}.stat-grid small{letter-spacing:1.4px;color:#81889a;font-size:9px}.stat-grid strong{margin:12px 0;font-size:31px;display:block}.stat-grid p{color:#7e8597;margin:0;font-size:10px}.stat-grid p b{color:#16a99c}.dash-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:12px;padding:24px}.panel-head{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.panel-head h2{margin:0 0 6px;font-size:16px}.panel-head p{color:#8b91a2;margin:0;font-size:10px}.panel-head button{color:var(--indigo);font-size:10px;font-weight:750}.activity-row{border-top:1px solid #edf0f5;align-items:center;gap:12px;padding:15px 0;display:flex}.activity-row strong{font-size:12px}.activity-row p{color:#82899b;margin:4px 0 0;font-size:9px}.activity-row>span{color:#9aa0af;margin-left:auto;font-size:9px}.line-chart{height:190px;position:relative;overflow:hidden}.gridline{border-top:1px dashed #e4e7ee;position:absolute;left:0;right:0}.g1{top:25%}.g2{top:50%}.g3{top:75%}.trend-line{background:linear-gradient(90deg,#545be4,#23cdbd);height:3px;position:absolute;top:42%;left:3%;right:3%;transform:rotate(-7deg)}.point{background:#fff;border:3px solid #32b9c5;border-radius:50%;width:9px;height:9px;position:absolute}.p1{top:57%;left:4%}.p2{top:50%;left:26%}.p3{top:43%;left:48%}.p4{top:36%;left:70%}.p5{top:27%;left:94%}.chart-labels{color:#9ca2b1;justify-content:space-between;font-size:8px;display:flex}.toolbar{align-items:center;gap:12px;margin-bottom:16px;display:flex}.toolbar label{border:1px solid var(--line);color:#959cac;background:#fff;border-radius:8px;flex:1;max-width:390px;padding:9px 13px}.toolbar input{border:0;outline:none;width:90%;margin-left:10px;font-size:12px}.toolbar>button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:11px 14px;font-size:11px}.toolbar>span{color:#8b92a2;margin-left:auto;font-size:11px}.athlete-list{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden}.list-head,.athlete-list .athlete-list-row{grid-template-columns:2fr .8fr .7fr 1.2fr 30px;align-items:center;gap:20px;display:grid}.list-head{color:#969cab;letter-spacing:1px;background:#fafbfc;padding:13px 22px;font-size:9px}.athlete-list .athlete-list-row{border-top:1px solid #edf0f5;padding:17px 22px}.athlete-id{align-items:center;gap:13px;display:flex}.avatar.large{width:44px;height:44px}.athlete-id strong,.athlete-id small{display:block}.athlete-id strong{font-size:13px}.athlete-id small{color:#868d9e;margin-top:5px;font-size:10px}.status{color:#8990a0;font-size:10px}.status.on{color:#10a393;background:#e8faf7;border-radius:12px;width:max-content;padding:5px 8px}.sessions{font-size:13px}.sessions small{color:#949aa9;font-weight:400}.progress-cell span{color:#979dac;font-size:9px}.progress-cell span b{color:#10a496;font-size:11px}.progress-cell>i{background:#edf0f4;border-radius:5px;height:4px;margin-top:8px;display:block}.progress-cell>i b{background:linear-gradient(90deg,#555be2,#29cbbb);border-radius:5px;height:100%;display:block}.dots{color:#9096a7}.compact{align-items:start}.compact span,.crumb{color:#999faf;letter-spacing:1px;font-size:9px}.crumb{color:var(--indigo);padding:0;font-weight:750}.compact h1{margin-top:22px}.add-form{border:1px solid var(--line);background:#fff;border-radius:12px;max-width:760px}.form-section{border-bottom:1px solid var(--line);gap:14px;padding:24px 28px;display:flex}.section-number{width:36px;height:36px;color:var(--indigo);background:#e9eaff;border-radius:9px;place-items:center;font-size:11px;font-weight:850;display:grid}.form-section h2{margin:0 0 5px;font-size:17px}.form-section p{color:#8c93a4;margin:0;font-size:10px}.form-grid{grid-template-columns:1fr 1fr;gap:0 18px;padding:10px 28px 24px;display:grid}.form-grid label.full{grid-column:1/-1}.form-grid label>small{color:#9aa0af;font-weight:400}.form-actions{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:22px;padding:18px 28px;display:flex}.form-actions .btn{padding:12px 18px;font-size:12px}@media (max-width:900px){.hero{grid-template-columns:1fr;padding-top:55px}.hero-visual{min-height:430px}.proof{flex-wrap:wrap}.features,.auth-page{grid-template-columns:1fr}.auth-brand{display:none}.mobile-mark{display:block}.auth-panel{padding:95px 25px 40px}.app-shell{display:block}.app-shell aside{display:none}.app-main{padding:95px 18px 35px}.mobile-appbar{z-index:10;background:var(--navy);color:#fff;justify-content:space-between;align-items:center;height:64px;padding:0 20px;display:flex;position:fixed;top:0;left:0;right:0}.stat-grid,.dash-grid{grid-template-columns:1fr}.list-head{display:none}.athlete-list .athlete-list-row{grid-template-columns:1fr auto;padding:17px}.athlete-list .athlete-list-row .status{grid-area:1/2}.sessions,.progress-cell{grid-column:1/-1}.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}}@media (max-width:560px){.public-nav{height:66px;padding:0 18px}.public-nav nav>button:first-child{display:none}.hero{gap:30px;padding:48px 20px 55px}.hero h1{letter-spacing:-2.5px;font-size:47px}.hero-copy>p{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch;gap:18px}.trust{gap:10px;font-size:10px}.hero-visual{min-height:350px}.mock{width:92%;height:280px;left:1%}.float-card{bottom:0}.proof{justify-content:flex-start;padding:30px 22px}.proof span{width:100%}.features{padding:55px 22px}.page-head{flex-direction:column;align-items:stretch;gap:20px}.page-head .btn{width:100%}.page-head h1{font-size:27px}.toolbar{flex-wrap:wrap}.toolbar label{flex-basis:100%;max-width:none}.auth-panel{align-items:start}.form-heading h2{font-size:32px}.form-grid,.form-section,.form-actions{padding-left:18px;padding-right:18px}.form-actions{justify-content:space-between}.chart-card{display:none}}.training-plans-page{color:#f8fafc;background:#070d1f;min-height:100%;padding:36px}.training-plans-head{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.training-plans-head p,.plan-modal>header p{color:#8b7cf8;letter-spacing:.14em;margin:0 0 4px;font-size:12px}.training-plans-head h1{margin:0;font-size:30px}.training-plans-page .button{color:#f8fafc;font:inherit;cursor:pointer;background:#16213d;border:1px solid #ffffff1f;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:10px 15px;display:inline-flex}.training-plans-page .button svg{width:18px}.training-plans-page .button.primary{background:linear-gradient(110deg,var(--narilo-purple),var(--narilo-blue));color:#fff;border:0}.training-plans-page .button.ghost{background:0 0}.training-plans-page button:disabled{opacity:.55;cursor:not-allowed}.plan-filters{grid-template-columns:repeat(3,minmax(160px,240px));gap:12px;margin-bottom:24px;display:grid}.plan-filters label,.plan-form-grid label{color:#a8b2c7;gap:7px;font-size:13px;display:grid}.plan-filters select,.plan-form-grid input,.plan-form-grid select,.plan-form-grid textarea,.plan-tasks input,.plan-athlete-tools label{box-sizing:border-box;color:#f8fafc;width:100%;font:inherit;background:#111a32;border:1px solid #ffffff1c;border-radius:10px;padding:11px 12px}.plan-filters select:focus,.plan-form-grid input:focus,.plan-form-grid select:focus,.plan-form-grid textarea:focus,.plan-tasks input:focus,.plan-athlete-tools input:focus{outline-offset:1px;outline:2px solid #6c5ce78c}.training-plan-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.training-plan-card{background:#111a32;border:1px solid #ffffff14;border-radius:16px;min-width:0;padding:18px;box-shadow:0 12px 30px #0000001f}.training-plan-card>header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.plan-sport{text-align:center;color:#c9c2ff;background:#6c5ce72b;border-radius:999px;padding:5px 9px;font-size:12px;display:inline-flex}.plan-edit{color:#a8b2c7;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;font-size:12px;display:inline-flex}.plan-edit svg{width:15px}.training-plan-card h2{margin:15px 0 7px;font-size:17px;line-height:1.35}.training-plan-card time{color:#a8b2c7;align-items:center;gap:6px;font-size:13px;display:flex}.training-plan-card time svg{width:15px}.training-plan-card ol{margin:16px 0;padding-left:24px}.training-plan-card li{color:#e4e9f3;white-space:pre-wrap;overflow-wrap:anywhere;padding:5px 0;font-size:14px;line-height:1.5}.plan-assignees{color:#a8b2c7;border-top:1px solid #ffffff12;gap:9px;margin-top:14px;padding-top:13px;font-size:13px;display:flex}.plan-assignees>svg{flex:none;width:17px}.plan-assignees strong{color:#e4e9f3;font-weight:500;display:block}.plan-assignees button{color:#63d7ff;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;margin-top:4px;padding:0;display:flex}.plan-assignees button svg{width:14px}.plan-assignees p{margin:7px 0 0;line-height:1.5}.plan-note{color:#c7cfde;white-space:pre-wrap;overflow-wrap:anywhere;background:#ffffff09;border-radius:10px;margin:14px 0 0;padding:12px;font-size:13px;line-height:1.55}.plan-empty{color:#a8b2c7;text-align:center;background:#111a32;border:1px dashed #ffffff21;border-radius:16px;place-items:center;gap:8px;min-height:220px;display:grid}.plan-empty svg{color:#8b7cf8;width:28px}.plan-alert{border-radius:10px;margin:12px 0;padding:11px 13px}.plan-alert.error{color:#fecaca;background:#7f1d1d40;border:1px solid #f8717159}.plan-alert.success{color:#a7f3d0;background:#064e3b47;border:1px solid #22d3a64d}.plan-modal-backdrop{z-index:1000;background:#030712bf;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow:auto}.plan-modal{color:#f8fafc;background:#0e1730;border:1px solid #ffffff1a;border-radius:18px;width:min(900px,100%);max-height:calc(100vh - 40px);overflow:auto;box-shadow:0 28px 80px #00000073}.plan-modal>header{z-index:2;background:#0e1730;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:20px 22px;display:flex;position:sticky;top:0}.plan-modal>header h2{margin:0;font-size:22px}.plan-modal>header button{color:#a8b2c7;cursor:pointer;background:0 0;border:0}.plan-modal form{padding:22px}.plan-form-grid{grid-template-columns:2fr 1fr 1fr;gap:14px;display:grid}.plan-note-field{grid-column:1/-1}.plan-form-grid textarea{resize:vertical;min-height:88px}.plan-tasks,.plan-athletes{border:0;margin:20px 0 0;padding:0}.plan-tasks legend,.plan-athletes legend{color:#f8fafc;width:100%;margin-bottom:10px;font-weight:600}.plan-athletes legend span{float:right;color:#22d3a6;font-size:13px;font-weight:400}.plan-tasks>div{grid-template-columns:24px 1fr 38px;align-items:center;gap:7px;margin-bottom:8px;display:grid}.plan-tasks>div>span{color:#8b7cf8}.plan-tasks>div>button{color:#a8b2c7;cursor:pointer;background:0 0;border:0;place-items:center;height:38px;display:grid}.plan-tasks>div>button svg{width:17px}.plan-athlete-tools{grid-template-columns:1fr auto auto;gap:8px;display:grid}.plan-athlete-tools label{align-items:center;display:flex}.plan-athlete-tools label svg{color:#a8b2c7;width:17px}.plan-athlete-tools input{color:#fff;width:100%;font:inherit;background:0 0;border:0;outline:0}.plan-athlete-tools>button{color:#dbe4f3;cursor:pointer;background:#16213d;border:1px solid #ffffff1a;border-radius:9px;padding:8px 10px}.plan-athlete-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:210px;margin-top:10px;display:grid;overflow:auto}.plan-athlete-list>button{color:#dbe4f3;text-align:left;cursor:pointer;background:#111a32;border:1px solid #ffffff14;border-radius:9px;align-items:center;gap:8px;min-width:0;padding:10px;display:flex}.plan-athlete-list>button.selected{background:#6c5ce726;border-color:#6c5ce7}.plan-athlete-list>button>span{border:1px solid #64748b;border-radius:5px;flex:none;place-items:center;width:18px;height:18px;display:grid}.plan-athlete-list svg{width:14px}.plan-modal form>footer{border-top:1px solid #ffffff14;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:17px;display:flex}.athlete-assigned-plans{margin-bottom:28px}.athlete-subsection-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.athlete-subsection-head h2{margin:0;font-size:20px}.athlete-subsection-head span{color:#a8b2c7}.athlete-plan-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px;display:grid}.athlete-plan-grid>article{background:#111a32;border:1px solid #ffffff14;border-radius:15px;padding:16px}.athlete-plan-grid header{color:#a8b2c7;justify-content:space-between;gap:8px;font-size:12px;display:flex}.athlete-plan-grid header>span{color:#c9c2ff}.athlete-plan-grid time{align-items:center;gap:5px;display:flex}.athlete-plan-grid time svg{width:14px}.athlete-plan-grid h3{margin:12px 0;font-size:16px}.athlete-plan-grid ol{margin:0;padding-left:21px}.athlete-plan-grid li{white-space:pre-wrap;overflow-wrap:anywhere;padding:4px 0;line-height:1.5}.athlete-plan-grid article>p{color:#a8b2c7;white-space:pre-wrap;border-top:1px solid #ffffff12;margin:12px 0 0;padding-top:10px}@media (max-width:1450px){.training-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1050px){.training-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-form-grid{grid-template-columns:1fr 1fr}.plan-form-grid label:first-child,.plan-note-field{grid-column:1/-1}.plan-athlete-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.training-plans-page{padding:20px 16px}.training-plans-head{flex-direction:column;align-items:flex-start}.training-plans-head .button{width:100%}.plan-filters,.training-plan-grid{grid-template-columns:1fr}.plan-modal-backdrop{padding:0}.plan-modal{border-radius:0;min-height:100vh;max-height:none}.plan-form-grid{grid-template-columns:1fr}.plan-form-grid label:first-child,.plan-note-field{grid-column:auto}.plan-athlete-tools{grid-template-columns:1fr 1fr}.plan-athlete-tools label{grid-column:1/-1}.plan-athlete-list{grid-template-columns:1fr}.plan-modal form>footer{flex-direction:column-reverse}.plan-modal form>footer .button{width:100%}}.plan-selected-summary{background:#6c5ce71a;border:1px solid #6c5ce747;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;font-size:13px;display:flex}.plan-selected-summary strong{color:#f8fafc;font-weight:500}.plan-selected-summary button{color:#63d7ff;font:inherit;cursor:pointer;background:0 0;border:0}.plan-selected-summary p{color:#c7cfde;flex-basis:100%;margin:2px 0 0;line-height:1.5}.app-main:has(.training-plans-page){background:#070d1f;min-width:0;padding:0}.training-plans-page{width:100%;min-height:100vh}.plan-filters{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.plan-date-filter{align-items:end;gap:6px;min-width:0;display:flex}.plan-date-filter label{flex:1;min-width:110px}.plan-date-filter input{color:#f8fafc;background:#111a32;border:1px solid #ffffff1c;border-radius:10px;width:130px;min-width:0;padding:11px 8px}.plan-date-filter button{color:#63d7ff;padding:11px 6px}.training-plan-card{flex-direction:column;height:100%;display:flex;position:relative}.training-plan-card>header{min-height:31px}.training-plan-card>header:has(.plan-card-menu:only-child){justify-content:flex-end}.training-plan-card ol.two-columns{grid-template-rows:repeat(5,auto);grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:column;column-gap:26px;display:grid}.training-plan-card ol.one-column{display:block}.plan-card-menu{margin-left:auto;position:relative}.plan-card-menu>button{color:#a8b2c7;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}:is(.plan-card-menu>button:hover,.plan-card-menu>button:focus-visible){color:#fff;background:#16213d}.plan-card-menu svg{width:18px}.plan-card-menu>[role=menu]{z-index:20;background:#16213d;border:1px solid #ffffff1a;border-radius:10px;width:160px;padding:6px;position:absolute;top:36px;right:0;box-shadow:0 14px 34px #00000059}.plan-card-menu [role=menuitem]{color:#f8fafc;text-align:left;border-radius:7px;align-items:center;gap:8px;width:100%;padding:9px;display:flex}:is(.plan-card-menu [role=menuitem]:hover,.plan-card-menu [role=menuitem]:focus-visible){background:#ffffff14}.plan-card-menu [role=menuitem].destructive{color:#fca5a5}.plan-delete-dialog{color:#f8fafc;background:#111a32;border:1px solid #ffffff1a;border-radius:16px;width:min(440px,100%);padding:24px;box-shadow:0 24px 70px #00000073}.plan-delete-dialog h2{margin:0 0 10px}.plan-delete-dialog p{color:#a8b2c7;line-height:1.6}.plan-delete-dialog>div{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.training-plans-page .button.destructive{color:#fff;background:#b91c1c;border-color:#ef4444}@media (max-width:1250px) and (min-width:1051px){.training-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1100px){.plan-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.plan-filters{grid-template-columns:1fr}.plan-date-filter{flex-wrap:wrap}.plan-date-filter label{flex-basis:100%}.training-plan-card ol.two-columns{display:block}.plan-delete-dialog>div{flex-direction:column-reverse}.plan-delete-dialog .button{width:100%}}.training-plan-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.training-plan-card ol{padding-left:0;list-style:none}.training-plan-card li{grid-template-columns:24px minmax(0,1fr);gap:5px;min-width:0;display:grid}.plan-task-number{color:#8b7cf8}.plan-task-text{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;min-width:0}.plan-date-popover{gap:7px;min-width:0;display:grid;position:relative}.plan-filter-label{color:#a8b2c7;font-size:13px}.plan-date-trigger{color:#f8fafc;text-align:left;background:#111a32;border:1px solid #ffffff1c;border-radius:10px;grid-template-columns:18px minmax(0,1fr) 16px;align-items:center;gap:8px;width:100%;min-height:43px;padding:10px 12px;display:grid}.plan-date-trigger span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.plan-date-trigger svg{width:17px}.plan-date-panel{z-index:80;background:#111a32;border:1px solid #ffffff1f;border-radius:13px;width:min(360px,100vw - 32px);padding:14px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 20px 50px #00000073}.plan-date-modes{grid-template-columns:1fr 1fr;gap:8px;display:grid}.plan-date-modes button{color:#c7cfde;background:#16213d;border:1px solid #ffffff1a;border-radius:9px;padding:10px}.plan-date-modes button.active{color:#fff;background:#6c5ce733;border-color:#6c5ce7}.plan-date-inputs{gap:10px;margin-top:12px;display:grid}.plan-date-inputs label{color:#a8b2c7;gap:6px;font-size:12px;display:grid}.plan-date-inputs input{color:#f8fafc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0e1730;border:1px solid #ffffff1f;border-radius:9px;width:100%;min-width:0;padding:10px 11px}.plan-date-inputs p{color:#fecaca;margin:0;font-size:12px}.plan-date-clear{color:#63d7ff;text-align:center;width:100%;margin-top:12px;padding:9px}.plan-date-trigger:focus-visible{outline-offset:2px;outline:2px solid #6c5ce7}.plan-date-modes button:focus-visible{outline-offset:2px;outline:2px solid #6c5ce7}.plan-date-inputs input:focus-visible{outline-offset:2px;outline:2px solid #6c5ce7}.plan-date-clear:focus-visible{outline-offset:2px;outline:2px solid #6c5ce7}@media (max-width:1100px){.plan-date-panel{left:0;right:auto}}@media (max-width:700px){.plan-date-panel{width:auto;max-height:calc(100vh - 92px);position:fixed;top:76px;left:16px;right:16px;overflow:auto}}.plan-date-trigger span{text-overflow:clip;font-size:12px;overflow:visible}.training-plan-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:row;align-items:start;gap:16px}.training-plan-card{align-self:start;height:460px;min-height:460px;max-height:460px;overflow:visible}.training-plan-card>header{z-index:3;flex:0 0 34px;position:relative}.training-plan-card h2{-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;flex:none;display:-webkit-box;overflow:hidden}.training-plan-card time{flex:none}.training-plan-card ol{flex:auto;align-content:start;min-height:0;margin:12px 0;overflow:hidden}.training-plan-card li{white-space:normal;overflow-wrap:normal;align-items:start;gap:4px;min-width:0;padding:2px 0;font-size:14px;line-height:20px}.plan-task-content{min-width:0;position:relative}.plan-task-preview{color:#e4e9f3;width:100%;min-width:0;font:inherit;line-height:inherit;text-align:left;background:0 0;border:0;padding:0;display:block}.plan-task-preview-text{-webkit-line-clamp:2;line-clamp:2;overflow-wrap:break-word;word-break:normal;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.plan-task-measure{z-index:-1;visibility:hidden;color:#0000;width:100%;height:auto;font:inherit;line-height:inherit;white-space:normal;overflow-wrap:break-word;word-break:normal;pointer-events:none;display:block;position:absolute;top:0;left:0;overflow:visible}.plan-task-static{cursor:text}.plan-task-trigger{cursor:pointer;border-radius:4px;margin:-2px -4px;padding:2px 4px}.plan-task-trigger:hover{color:#f8fafc;background:#ffffff0e}.plan-task-trigger:focus-visible{outline-offset:2px;outline:2px solid #6c5ce7}.plan-task-popup{z-index:1300;color:#f8fafc;width:min(360px,100vw - 32px);max-height:190px;font-family:var(--font-family-primary);background:#16213d;border:1px solid #6c5ce773;border-radius:11px;padding:12px 14px;font-size:14px;line-height:20px;position:fixed;overflow:auto;box-shadow:0 18px 45px #00000080}.plan-task-popup p{white-space:pre-wrap;overflow-wrap:break-word;word-break:normal;margin:0}.training-plan-card .plan-assignees{flex:none;margin-top:auto;position:relative}.training-plan-card .plan-assignees>div{min-width:0}.training-plan-card .plan-assignees strong{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.training-plan-card .plan-assignees p{z-index:30;background:#16213d;border:1px solid #ffffff1f;border-radius:10px;max-height:140px;margin:0;padding:11px;position:absolute;bottom:calc(100% + 8px);left:0;right:0;overflow:auto;box-shadow:0 14px 35px #0006}.training-plan-card .plan-note{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;flex:none;max-height:58px;display:-webkit-box;overflow:hidden}@media (max-width:1499px){.training-plan-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1100px){.training-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:950px){.training-plan-card ol.two-columns{display:block}}@media (max-width:900px){.app-main:has(.training-plans-page){padding-top:64px}}@media (max-width:700px){.training-plans-page{padding:24px 16px 20px}.training-plan-grid{grid-template-columns:1fr;gap:12px}.training-plan-card{height:auto;min-height:0;max-height:none;padding:16px}.training-plan-card ol{flex:none;overflow:visible}.training-plan-card ol.two-columns{display:block;overflow:visible}.training-plan-card .plan-note{-webkit-line-clamp:unset;line-clamp:unset;max-height:none}.training-plan-card .plan-assignees{margin-top:12px}.training-plan-card .plan-assignees p{width:min(340px,100vw - 64px);right:auto}}.training-plan-tabs{background:#0e1730;border:1px solid #ffffff14;border-radius:12px;gap:4px;margin:0 0 22px;padding:4px;display:inline-flex}.training-plan-tabs a{color:#a8b2c7;border-radius:8px;justify-content:center;align-items:center;min-height:34px;padding:7px 14px;font-size:14px;text-decoration:none;display:inline-flex}:is(.training-plan-tabs a:hover,.training-plan-tabs a:focus-visible){color:#f8fafc;background:#ffffff0f}.training-plan-tabs a.active{color:#fff;background:linear-gradient(110deg,#6c5ce7d9,#00c2ffb8)}.template-filters{grid-template-columns:minmax(220px,1.4fr) minmax(180px,1fr) minmax(210px,1fr);gap:12px;margin-bottom:24px;display:grid}.template-filters label{color:#a8b2c7;gap:7px;font-size:13px;display:grid}.template-filters select,.template-search{box-sizing:border-box;color:#f8fafc;width:100%;font:inherit;background:#111a32;border:1px solid #ffffff1c;border-radius:10px}.template-filters select{padding:11px 12px}.template-search{align-items:center;padding:0 12px;display:flex}.template-search svg{color:#a8b2c7;flex:none;width:17px}.template-search input{color:#f8fafc;width:100%;min-width:0;font:inherit;background:0 0;border:0;outline:0;padding:11px 9px}.template-filters select:focus,.template-search:focus-within{outline-offset:1px;outline:2px solid #6c5ce78c}.template-empty{min-height:200px;padding:24px}.template-empty>span{max-width:520px;line-height:1.55}.template-empty .button{margin-top:5px}.training-plan-template-card ol{flex:1}.template-updated{border-top:1px solid #ffffff12;margin-top:auto;padding-top:13px}.training-plan-template-card:not(:has(h2)) ol{margin-top:10px}.template-form-grid{grid-template-columns:2fr 1fr}.template-form-grid .plan-note-field{grid-column:1/-1}.plan-alert a{color:inherit;margin-left:8px;font-weight:600}.plan-card-menu>[role=menu]{width:190px}.plan-card-menu [role=menuitem]:disabled{opacity:.55;cursor:not-allowed}@media (max-width:1100px){.template-filters{grid-template-columns:1fr 1fr}.template-filters label:first-child{grid-column:1/-1}}@media (max-width:700px){.training-plan-tabs{box-sizing:border-box;width:100%;margin-bottom:18px;display:flex}.training-plan-tabs a{flex:1}.template-filters{grid-template-columns:1fr;margin-bottom:18px}.template-filters label:first-child{grid-column:auto}.training-plan-template-card ol{flex:none}.template-updated{margin-top:12px}.template-modal{min-height:100vh}.template-form-grid{grid-template-columns:1fr}.template-form-grid .plan-note-field{grid-column:auto}}.template-create-plan{width:100%;margin:12px 0 4px}.template-create-plan svg{width:17px}.template-source-label{color:#a8b2c7;margin-top:4px;font-size:13px;display:block}.template-plan-form-grid{grid-template-columns:minmax(160px,.8fr) minmax(240px,1.5fr) minmax(190px,1fr)}.template-plan-note{margin-top:20px;display:block}.template-plan-success{justify-content:space-between;align-items:center;gap:14px;display:flex}.template-plan-success span{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.template-plan-success a{margin-left:0}.template-to-plan-modal>form>footer{z-index:2;margin-inline:-22px;background:#0e1730;margin-bottom:-22px;padding:16px 22px 20px;position:sticky;bottom:-22px}@media (max-width:700px){.template-to-plan-modal{min-height:100vh}.template-plan-form-grid{grid-template-columns:1fr}.template-plan-success{flex-direction:column;align-items:flex-start}.template-plan-success span{justify-content:flex-start}.template-to-plan-modal>form>footer{bottom:0}}@media (min-width:901px){.app-shell{grid-template-columns:var(--coach-sidebar-width) minmax(0,1fr)}.app-shell>aside{width:var(--coach-sidebar-width)}.app-shell>.app-main{grid-column:2;min-width:0}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@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}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--narilo-navy:#0b132b;--narilo-purple:#6c5ce7;--narilo-blue:#00c2ff;--narilo-teal:#22d3a6;--narilo-dark-bg:#070d1f;--narilo-dark-sidebar:#0b132b;--narilo-dark-surface:#111a32;--narilo-dark-surface-hover:#16213d;--narilo-dark-text:#f8fafc;--narilo-dark-text-secondary:#a8b2c7;--narilo-dark-border:#ffffff14;--narilo-gradient:linear-gradient(120deg, var(--narilo-purple) 0%, var(--narilo-blue) 52%, var(--narilo-teal) 100%);--color-page:#f5f7fa;--color-card:#fff;--color-text:var(--narilo-navy);--color-text-secondary:#64748b;--color-border:#e5e7eb;--color-focus:color-mix(in srgb, var(--narilo-blue) 26%, transparent);--color-danger:#dc2626;--color-danger-hover:#b91c1c;--color-disabled:#cbd5e1;--font-family-primary:"Poppins", "Segoe UI", Arial, sans-serif;--font-size-page-title:32px;--line-height-page-title:40px;--font-size-section-title:24px;--line-height-section-title:32px;--font-size-card-title:17px;--line-height-card-title:24px;--font-size-body:16px;--line-height-body:24px;--font-size-secondary:14px;--line-height-secondary:22px;--ui-body-size:var(--font-size-body);--ui-button-size:15px;--ui-helper-size:var(--font-size-secondary);--ui-badge-size:var(--font-size-secondary);--ui-section-title:26px;--radius-control:11px;--radius-card:15px;--shadow-card:0 8px 24px #0b132b0f;--shadow-focus:0 0 0 3px var(--color-focus);--control-height:46px;--card-padding:20px;--icon-size-sm:16px;--icon-size-md:20px;--icon-size-lg:24px;--icon-stroke:2;--coach-sidebar-width:250px;--navy:var(--narilo-navy);--indigo:var(--narilo-purple);--cyan:var(--narilo-teal);--ink:var(--color-text);--muted:var(--color-text-secondary);--line:var(--color-border);--bg:var(--color-page)}html{background:var(--color-page)}body{background:var(--color-page);color:var(--color-text);font-family:var(--font-family-primary);font-size:var(--font-size-body);line-height:var(--line-height-body);text-rendering:optimizelegibility}button,input,select,textarea{font:inherit}.narilo-button{border-radius:var(--radius-control);border:1px solid #0000;min-height:42px;padding:10px 18px;font-weight:600;transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s}.narilo-button:hover:not(:disabled){transform:translateY(-1px)}.narilo-button:focus-visible{box-shadow:var(--shadow-focus);outline:none}.narilo-button:disabled{cursor:not-allowed;opacity:.58;transform:none}.narilo-button--primary{background:var(--narilo-purple);color:#fff}.narilo-button--primary:hover:not(:disabled){background:#5b4bd6}.narilo-button--secondary{border-color:var(--narilo-purple);color:var(--narilo-purple);background:#fff}.narilo-button--secondary:hover:not(:disabled){background:#f2f0ff}.narilo-button--ghost{color:var(--color-text-secondary);background:0 0}.narilo-button--ghost:hover:not(:disabled){color:var(--color-text);background:#eef2f7}.narilo-button--destructive{background:var(--color-danger);color:#fff}.narilo-button--destructive:hover:not(:disabled){background:var(--color-danger-hover)}.narilo-card{padding:var(--card-padding);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-card);box-shadow:var(--shadow-card)}.narilo-control{min-height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-card);color:var(--color-text);padding:10px 13px}.narilo-control:focus-visible{border-color:var(--narilo-purple);box-shadow:var(--shadow-focus);outline:none}:where(input,select,textarea):focus-visible{border-color:var(--narilo-purple);box-shadow:var(--shadow-focus);outline:none}:where(input[type=checkbox],input[type=radio]){accent-color:var(--narilo-purple)}.narilo-badge{color:#5547c6;width:fit-content;max-width:100%;font-size:var(--font-size-secondary);text-align:center;background:#f0edff;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:5px 10px;font-weight:600;line-height:1.35;display:inline-flex}.narilo-icon{width:var(--icon-size-md);height:var(--icon-size-md);stroke-width:var(--icon-stroke)}.narilo-icon--sm{width:var(--icon-size-sm);height:var(--icon-size-sm)}.narilo-icon--lg{width:var(--icon-size-lg);height:var(--icon-size-lg)}.form-grid textarea{resize:vertical;font:inherit;background:#fff;border:1px solid #dfe2eb;border-radius:8px;outline:none;padding:14px}.form-grid textarea:focus{border-color:#555be4;box-shadow:0 0 0 3px #555be412}.training-panel{border:1px solid var(--line);background:#fff;border-radius:12px;max-width:980px;margin-top:20px;overflow:hidden}.training-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px 28px;display:flex}.training-head p{letter-spacing:1.5px;color:var(--indigo);margin:0 0 5px;font-size:9px;font-weight:800}.training-head h2{margin:0;font-size:18px}.training-head>span{color:#8c93a4;font-size:10px}.training-head-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.training-head-actions>span{color:#8c93a4;white-space:nowrap;margin-right:4px;font-size:10px}.btn.secondary{color:#555be4;box-shadow:none;background:#fff;border:1px solid #555be4}.btn.secondary:disabled{color:#a5abba;cursor:not-allowed;border-color:#d9dce7}.training-empty{color:#8c93a4;padding:34px 28px;font-size:12px}.training-empty strong{color:#252d43;font-size:14px;display:block}.training-empty p{margin:8px 0 16px;line-height:1.6}.training-item{border-top:1px solid #edf0f5;grid-template-columns:150px 1fr;gap:20px;padding:18px 28px;display:grid}.training-item time{color:#6f7890;font-size:10px;font-weight:700}.training-item strong{font-size:13px}.training-item p{color:#7d8598;white-space:pre-wrap;margin:6px 0 0;font-size:11px;line-height:1.6}.training-content{min-width:0}.media-add-button{color:#fff;cursor:pointer;background:#555be4;border:1px solid #555be4;border-radius:8px;justify-content:center;align-items:center;margin-top:14px;padding:11px 15px;font-size:11px;font-weight:800;display:inline-flex;box-shadow:0 8px 18px #555be426}.media-add-button:hover{background:#454bc9}.media-inline-button{color:#4e55d4;cursor:pointer;background:0 0;border:0;margin-top:14px;padding:0;font-size:10px;font-weight:800}.training-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.delete-link{color:#a04a5b;cursor:pointer;background:0 0;border:0;margin-top:14px;padding:0;font-size:10px;font-weight:700}.delete-link:disabled{cursor:wait;opacity:.55}.media-form{background:#f8f9fd;border:1px solid #dfe4f0;border-radius:12px;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px;padding:18px;display:grid}.media-form label{color:#3f4658;gap:7px;font-size:10px;font-weight:800;display:grid}.media-form input,.media-form select,.media-form textarea{box-sizing:border-box;color:#17213c;width:100%;font:inherit;background:#fff;border:1px solid #d7ddea;border-radius:8px;padding:11px 12px;font-weight:500}.media-form .full,.media-form-actions{grid-column:1/-1}.media-form-actions{justify-content:flex-end;gap:10px;display:flex}.media-form-actions>button:first-child{color:#6f7890;cursor:pointer;background:0 0;border:0}.training-media-grid{grid-template-columns:repeat(auto-fill,minmax(min(180px,100%),1fr));gap:12px;width:100%;margin-top:16px;display:grid}.media-card{background:#fff;border:1px solid #e0e5ef;border-radius:12px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.media-card img,.media-card video{aspect-ratio:16/10;object-fit:contain;background:#10162d;width:100%;height:auto;display:block}.media-card>div{flex-direction:column;flex:1;align-items:flex-start;min-height:128px;padding:11px;display:flex}.media-card>div>strong{-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;margin-top:7px;display:-webkit-box;overflow:hidden}.media-card>div>p{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:5px 0 0;display:-webkit-box;overflow:hidden}.media-card .delete-link{margin-top:auto;padding-top:9px}.media-date{color:#8a92a5;margin-top:10px;font-size:9px;font-weight:600;display:block}.media-status{color:#273149;text-align:center;text-overflow:clip;white-space:nowrap;background:0 0;flex:none;justify-content:center;align-items:center;gap:7px;width:max-content;min-width:max-content;max-width:100%;padding:3px 6px;font-size:9px;font-weight:750;display:inline-flex;overflow:visible}.media-status-icon{color:currentColor;flex:none;width:21px;height:21px}.media-status>span{color:#111827}.media-status.new .media-status-icon{color:#2563eb}.media-status.improving .media-status-icon{color:#d4a20a}.media-status.practicing .media-status-icon{color:#ea580c}.media-status.stable .media-status-icon{color:#7c3aed}.media-status.mastered .media-status-icon{color:#166534}.media-status.neutral{color:#737d91}.media-status.neutral>span{color:#737d91;font-weight:700}.status-selector{border:0;grid-column:1/-1;min-width:0;margin:0;padding:0}.status-selector legend{color:#444c61;margin-bottom:9px;font-size:14px;font-weight:800}.status-selector>div{flex-wrap:wrap;gap:8px;display:flex}.status-selector label{color:#111827;cursor:pointer;background:#fff;border:1px solid #d8deea;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:8px 11px;font-size:14px;font-weight:700;display:inline-flex}.status-selector label:hover{background:#f8f8ff;border-color:#aeb5e8}.status-selector label.selected{background:#f0f1ff;border-color:#555be4;box-shadow:0 0 0 2px #555be41a}.status-selector input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.status-selector label:focus-within{outline-offset:2px;outline:2px solid #555be4}.status-selector-icon{flex:none;width:20px;height:20px}.status-selector label.new .status-selector-icon{color:#2563eb}.status-selector label.improving .status-selector-icon{color:#d4a20a}.status-selector label.practicing .status-selector-icon{color:#ea580c}.status-selector label.stable .status-selector-icon{color:#7c3aed}.status-selector label.mastered .status-selector-icon{color:#166534}.optional-media-section{border-top:1px solid #edf0f5;padding:24px 28px}.optional-media-section>div:first-child small,.media-modal-head small{color:#555be4;letter-spacing:1.3px;font-size:9px;font-weight:800}.optional-media-section h2{margin:5px 0;font-size:17px}.optional-media-section p{color:#858da0;margin:0 0 18px;font-size:11px}.media-fields{gap:14px;display:grid}.training-composer{width:100%;max-width:1180px}.training-composer-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;display:grid}.training-composer-card{border:1px solid var(--line);background:#fff;border-radius:12px;min-width:0;overflow:hidden}.training-media-column{padding:22px 28px 28px}.status-column-block{border-top:1px solid #e7eaf1;margin-top:24px;padding-top:22px}.training-notes-input{resize:vertical;min-height:100px;max-height:260px;overflow-y:auto}.existing-training-media-button{white-space:normal;text-align:center;max-width:100%}.title-skill-suggestion{background:#f7f8ff;border:1px solid #dfe3f3;border-radius:10px;margin-top:16px;padding:14px}.title-skill-suggestion strong{color:#293149;font-size:14px;line-height:1.45;display:block}.title-skill-suggestion p{color:#737d91;margin:7px 0 12px;font-size:13px;line-height:1.5}.title-skill-suggestion button{color:#fff;background:#555be4;border-radius:8px;width:100%;padding:10px 12px;font-weight:750}.title-skill-suggestion button:disabled{cursor:not-allowed;background:#a8add4}.training-composer-actions{border:1px solid var(--line);background:#fff;border-radius:12px;max-width:none;margin-top:18px}.media-picker{color:#4c54c9;cursor:pointer;background:#f5f6ff;border:1px dashed #5961d9;border-radius:9px;justify-content:center;align-items:center;width:fit-content;padding:11px 15px;font-size:11px;font-weight:800;display:inline-flex}.media-picker input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.media-draft{background:#fafbfe;border:1px solid #e0e5ef;border-radius:11px;padding:16px}.media-draft-head{align-items:center;gap:10px;margin-bottom:14px;display:flex}.media-draft-head strong{color:#293149;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;overflow:hidden}.media-draft-head span{color:#8991a4;font-size:9px}.media-draft-head button{color:#a04a5b;cursor:pointer;background:0 0;border:0;font-size:9px;font-weight:700}.media-draft-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.media-draft-grid label,.training-select{color:#444c61;gap:7px;font-size:10px;font-weight:800;display:grid}.media-draft-grid .full{grid-column:1/-1}.media-draft-grid input,.media-draft-grid select,.media-draft-grid textarea,.training-select select{box-sizing:border-box;color:#1e2944;width:100%;font:inherit;background:#fff;border:1px solid #d8deea;border-radius:8px;padding:11px 12px;font-weight:500}.skill-combobox{position:relative}.skill-combobox small{color:#69738a;font-size:9px;font-weight:650}.create-skill-option{color:#4c54c9;text-align:left;cursor:pointer;background:#f5f6ff;border:1px solid #dfe3f3;border-radius:7px;width:100%;padding:9px 10px;font-size:10px;font-weight:750}:is(.create-skill-option:hover,.create-skill-option:focus-visible){background:#eef0ff;border-color:#5961d9;outline:none}.media-modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#10172d99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.media-modal{background:#fff;border-radius:16px;width:min(720px,100%);max-height:min(780px,92vh);padding:24px;overflow-y:auto;box-shadow:0 28px 80px #07102d4d}.media-modal-head{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.media-modal-head h2{color:#1b2540;margin:5px 0 0;font-size:21px}.media-modal-head>button{color:#757e92;cursor:pointer;background:0 0;border:0;font-size:25px}.training-select{margin-bottom:18px}.media-modal-actions{border-top:1px solid #e7eaf1;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;display:flex}.media-modal-actions>button:first-child{color:#70798d;cursor:pointer;background:0 0;border:0}.upload-message{color:#454dc2;background:#eef0ff;border-radius:8px;margin-top:14px;padding:11px 13px;font-size:11px;font-weight:700}.upload-message.success{color:#08766b;background:#ddf7f0}.upload-message.error{color:#9a3f52;background:#fff0f2}.profile-list{overflow:visible}.profile-list .list-head{border-radius:11px 11px 0 0}.profile-list .list-head,.profile-list .athlete-list-row{grid-template-columns:minmax(260px,2fr) .65fr .9fr minmax(170px,auto) 44px}.profile-list .athlete-list-row{cursor:pointer;transition:background .18s;position:relative}.profile-list .athlete-list-row:last-child{border-radius:0 0 11px 11px}.profile-list .athlete-list-row:has(.vertical-dots[aria-expanded=true]){z-index:90}.profile-list .athlete-list-row:hover{background:#fafbff}.athlete-name-link{color:#17213c;text-align:left;padding:0;font-size:13px;font-weight:800}.athlete-name-link:hover{color:#4f54df}.athlete-sport,.athlete-year,.last-training{color:#737c92;font-size:11px}.athlete-sports-inline{color:#737c92;flex-wrap:wrap;gap:2px 6px;margin-top:5px;font-size:12px;line-height:1.35;display:flex}.athlete-sports-inline span:not(:last-child):after{content:" ·";color:#a0a7b6}.athlete-progress-cell{cursor:default;justify-self:end;min-width:0}.athlete-menu-wrap{z-index:1;justify-self:end;position:relative}.vertical-dots{color:#697187;border-radius:8px;place-items:center;width:40px;height:40px;font-size:23px;line-height:1;display:grid}.vertical-dots:hover,.vertical-dots[aria-expanded=true]{color:#4f54df;background:#eef0fb}.athlete-dropdown{z-index:100;background:#fff;border:1px solid #e0e4ee;border-radius:10px;width:190px;padding:6px;position:absolute;top:44px;right:0;overflow:visible;box-shadow:0 16px 38px #15204425}.profile-list .athlete-list-row:last-child .athlete-dropdown{top:auto;bottom:44px}.athlete-dropdown button{text-align:left;border-radius:7px;width:100%;padding:10px 11px;font-size:11px;font-weight:700;display:block}.athlete-dropdown button:hover{background:#f3f4fa}.athlete-dropdown .danger{color:#a13d51}.athlete-profile-head{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.athlete-profile-head h1{letter-spacing:-1px;margin:20px 0 6px;font-size:34px}.athlete-profile-head p{color:#717a90;margin:0;font-size:13px}.profile-actions{gap:10px;display:flex}.profile-trainings{max-width:100%}.profile-tabs{background:#fff;border:1px solid #e0e4ee;border-radius:11px;gap:8px;width:fit-content;max-width:100%;margin-bottom:18px;padding:5px;display:flex}.profile-tabs button{color:#687186;border-radius:8px;padding:10px 17px;font-weight:750}.profile-tabs button.active{color:#fff;background:#555be4;box-shadow:0 7px 16px #555be42b}.progress-panel,.media-library-panel{max-width:100%}.skill-progress-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:18px 20px 22px;display:grid}.skill-progress-card{background:#fff;border:1px solid #e0e5ef;border-radius:12px;min-width:0;padding:14px;box-shadow:0 6px 18px #17204409}.skill-progress-card>header{flex-direction:column;align-items:stretch;gap:10px;display:flex}.skill-progress-sport{overflow-wrap:anywhere;text-align:center;text-overflow:clip;white-space:normal;justify-content:center;align-self:center;width:max-content;max-width:100%;overflow:visible}.skill-progress-title-row{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.skill-progress-card h3{color:#1f2942;overflow-wrap:anywhere;text-align:left;flex:auto;min-width:0;margin:0;font-size:14px;font-weight:400;line-height:20px}.skill-progress-title-row .media-status{margin-left:auto}.skill-progress-card dl{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 0;display:grid}.skill-progress-card dl>div{min-width:0}.skill-progress-card dt{color:#8991a4;font-size:11px}.skill-progress-card dd{color:#30394f;margin:3px 0 0;font-size:12px;font-weight:750}.skill-progress-card>p{color:#737d91;margin:9px 0 0;font-size:12px}.skill-chart{width:100%;height:145px;margin-top:8px;position:relative}.inline-training-actions{background:0 0;border:0;border-top:1px solid #e7eaf1;border-radius:0;margin:18px 0 0;padding:16px 0 0;display:flex}.inline-training-actions>button{flex:1 1 0;min-width:0}@media (max-width:1500px){.skill-progress-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1100px){.skill-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.first-measure{border:1px solid color-mix(in srgb,var(--narilo-purple) 16%,transparent);border-radius:var(--radius-control);background:color-mix(in srgb,var(--narilo-purple) 7%,#fff);color:var(--narilo-purple);padding:5px 9px;font-size:12px;font-weight:500;position:absolute;top:12px;right:12px}.progress-tooltip{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-card);max-width:min(240px,100vw - 32px);box-shadow:var(--shadow-card);color:var(--color-text-secondary);font-family:var(--font-family-primary);gap:3px;padding:9px 11px;font-size:13px;line-height:18px;display:grid}.progress-tooltip strong{color:var(--color-text);font-weight:600}.skill-chart-dot{fill:#fff;stroke:#6c5ce7;stroke-width:2px;vector-effect:non-scaling-stroke;transition:r .18s,filter .18s}.skill-chart-dot-current{fill:#22d3a6;stroke:#fff;stroke-width:2.3px;filter:drop-shadow(0 2px 5px #22d3a66b);vector-effect:non-scaling-stroke;transition:r .18s,filter .18s}.skill-chart-dot-halo{fill:#22d3a633}.progress-empty{color:#8991a4;place-items:center;height:190px;font-size:14px;display:grid}.media-library-grid{margin:0;padding:22px 28px 28px}.athlete-sparkline{justify-content:flex-end;align-items:center;gap:10px;min-width:170px;display:flex}.athlete-sparkline svg{width:138px;height:38px;overflow:visible}.athlete-sparkline .progress-area{fill:url(#narilo-mini-area);stroke:none}.athlete-sparkline .progress-line{fill:none;stroke:var(--narilo-purple);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.athlete-sparkline .progress-dot{fill:#fff;stroke:var(--narilo-purple);stroke-width:1.7px;vector-effect:non-scaling-stroke}.athlete-sparkline .progress-dot-current{fill:var(--narilo-teal);stroke:#fff;stroke-width:2.3px;filter:drop-shadow(0 2px 3px color-mix(in srgb,var(--narilo-teal) 38%,transparent));vector-effect:non-scaling-stroke}.athlete-sparkline .progress-dot-halo{fill:color-mix(in srgb,var(--narilo-teal) 16%,transparent)}.athlete-sparkline.single{gap:7px;min-width:170px}.athlete-sparkline.single svg{width:28px;height:28px}.athlete-sparkline.single>span{color:#7c8497;white-space:nowrap;font-size:11px}.sparkline-empty{color:#9aa1b1;text-align:right;max-width:160px;font-size:12px;display:inline-block}@media (prefers-reduced-motion:reduce){.skill-chart-dot,.skill-chart-dot-current{transition:none}}.profile-training-card{padding-top:22px;padding-bottom:22px}.confirm-modal{background:#fff;border-radius:15px;width:min(460px,100%);padding:26px;box-shadow:0 28px 80px #07102d4d}.confirm-modal h2{color:#1c2640;margin:0 0 12px;font-size:20px;line-height:1.35}.confirm-modal p{color:#747d91;margin:0;font-size:12px;line-height:1.6}.confirm-modal>div{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.confirm-modal>div>button:first-child{color:#687186;padding:11px 15px}.danger-button{color:#fff;background:#a53f52;border-radius:8px;padding:11px 15px;font-weight:750}.sport-checkboxes{border:1px solid #dfe3ec;border-radius:9px;grid-column:1/-1;margin:16px 0;padding:14px}.sport-checkboxes legend{padding:0 6px;font-size:12px;font-weight:800}.sport-checkboxes label{flex-direction:row;align-items:center;margin:5px 14px 5px 0;font-size:11px;display:inline-flex}.sport-checkboxes input{width:16px;height:16px;padding:0}.sport-chips{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.sport-chips span,.training-sport-label{color:#4d54cb;white-space:nowrap;background:#e9eaff;border-radius:999px;width:max-content;max-width:100%;padding:5px 10px;font-size:9px;font-weight:800;line-height:1.25;display:inline-flex}.athlete-sport{overflow-wrap:anywhere;white-space:normal}.training-form select{text-overflow:clip}.training-filter{align-items:center;gap:12px;display:flex}.training-filter select{color:#4d566b;background:#fff;border:1px solid #dde2ec;border-radius:7px;padding:8px 10px;font-size:10px}.training-filter span{color:#8c93a4;font-size:10px}.media-inherited-sport{color:#7b8396;margin-bottom:7px;font-size:9px;font-weight:700;display:block}@media (max-width:560px){.training-item{grid-template-columns:1fr;gap:7px;padding:17px 18px}.media-form{grid-template-columns:1fr}.training-head{flex-direction:column;align-items:stretch;gap:14px;padding:20px 18px}.training-head-actions{flex-wrap:wrap;width:100%}.training-head-actions>span{text-align:right;width:100%;margin:0}.training-head-actions .btn{flex:140px}.media-draft-grid{grid-template-columns:1fr}.media-draft-grid .full{grid-column:auto}.media-modal-backdrop{align-items:end;padding:0}.media-modal{box-sizing:border-box;border-radius:16px 16px 0 0;max-height:92vh;padding:20px 16px}.optional-media-section{padding:22px 18px}.profile-list .athlete-list-row{grid-template-columns:minmax(0,1fr) auto;gap:10px 8px}.profile-list .athlete-id,.profile-list .athlete-id>div:last-child{min-width:0}.profile-list .athlete-year,.profile-list .last-training{display:none}.profile-list .athlete-progress-cell{grid-column:1/-1;justify-self:stretch;padding-left:57px}.profile-list .athlete-menu-wrap{grid-area:1/2;align-self:center}.athlete-sparkline{justify-content:flex-start;min-width:0}.athlete-sparkline svg{width:min(138px,48vw)}.sparkline-empty{text-align:left;padding-top:2px}.athlete-dropdown{right:0}.athlete-profile-head{flex-direction:column;align-items:stretch}.athlete-profile-head h1{font-size:29px}.profile-actions{grid-template-columns:1fr 1fr;display:grid}.profile-actions .btn{padding:13px 10px;font-size:11px}.profile-tabs{width:100%}.profile-tabs button{flex:1;min-width:0;padding:10px 8px}.skill-progress-grid,.media-library-grid,.skill-progress-card{padding:14px}.skill-progress-card>header{flex-direction:column;align-items:stretch;gap:10px}.skill-chart{height:145px}.confirm-modal{margin:0 16px}}@media (min-width:561px) and (max-width:760px){.profile-list .athlete-list-row{grid-template-columns:minmax(0,1fr) minmax(170px,auto) 44px;gap:12px}.profile-list .athlete-year,.profile-list .last-training{display:none}.profile-list .athlete-progress-cell{grid-column:2;justify-self:end}.profile-list .athlete-menu-wrap{grid-column:3}}@media (max-width:560px){.profile-list .athlete-list-row{grid-template-columns:minmax(0,1fr) 44px}.profile-list .athlete-progress-cell{grid-area:2/1/auto/-1;justify-self:stretch;padding-left:57px}.profile-list .athlete-menu-wrap{grid-area:1/2}}@media (max-width:720px){.skill-progress-grid{grid-template-columns:1fr}.skill-progress-title-row{flex-wrap:wrap;align-items:flex-start}.skill-progress-card .media-status{white-space:normal;width:fit-content;min-width:0}.skill-progress-card .media-status>span{overflow-wrap:anywhere;text-align:center}.training-composer-grid{grid-template-columns:1fr}.training-media-column{padding:20px 18px}.status-column-block{margin-top:20px;padding-top:20px}.inline-training-actions{flex-direction:column;gap:10px;margin-top:14px}.inline-training-actions>button{width:100%}}body{font-size:var(--ui-body-size)}.app-shell button,.media-modal button,.auth-panel button{font-size:var(--ui-button-size)}.app-shell aside nav button{font-size:16px}.page-head h1,.athlete-profile-head h1{font-size:28px}.training-head h2{font-size:var(--ui-section-title)}.page-head small,.athlete-profile-head p,.training-empty,.training-filter span{font-size:var(--ui-helper-size)}.training-head p{font-size:14px}.training-filter select{font-size:15px}.sport-chips span,.training-sport-label,.media-status{font-size:var(--ui-badge-size)}.skill-progress-card .media-status>span,.compact-training-card .media-status>span{font-size:14px;font-weight:400;line-height:20px}.media-date,.media-inherited-sport{font-size:14px}.form-section p,.form-grid label,.media-draft-grid label,.training-select,.skill-combobox small{font-size:var(--ui-helper-size)}.form-section h2{font-size:20px}.media-picker,.media-draft-head strong,.media-draft-head button,.create-skill-option{font-size:14px}.training-day-list{gap:28px;padding:24px 28px 30px;display:grid}.training-day-group{min-width:0}.training-day-group>header{align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.training-day-group>header h3{color:#1f2942;text-transform:capitalize;margin:0;font-size:18px;font-weight:750}.training-day-group>header span{color:#7d869b;font-size:15px}.training-card-track{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;width:100%;display:grid}.compact-training-card{cursor:pointer;background:#fff;border:1px solid #e0e5ef;border-radius:12px;flex-direction:column;min-width:0;transition:border-color .18s,box-shadow .18s;display:flex;position:relative;box-shadow:0 8px 22px #1720440a}:is(.compact-training-card:hover,.compact-training-card:focus-visible){border-color:#aeb4e8;outline:none;box-shadow:0 11px 26px #17204416}.training-card-preview{aspect-ratio:16/9;background:#eef1f7;border-radius:11px 11px 0 0;width:100%;position:relative;overflow:hidden}.training-card-preview img,.training-card-preview video{object-fit:contain;background:#10162d;width:100%;height:100%;display:block}.training-no-media{color:#7d879a;text-align:center;place-content:center;gap:6px;height:100%;padding:12px;font-size:14px;display:grid}.training-no-media span{color:#9aa2b2;font-size:25px;line-height:1}.media-count{color:#fff;background:#111a37dc;border-radius:999px;padding:4px 7px;font-size:13px;font-weight:750;position:absolute;bottom:8px;right:8px}.training-card-body{flex-direction:column;flex:1;min-height:230px;padding:13px;display:flex}.training-card-topline{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.training-card-topline .training-sport-label{overflow-wrap:anywhere;text-align:center;text-overflow:clip;white-space:normal;flex:auto;justify-content:center;align-items:center;width:auto;max-width:none;min-height:32px;overflow:visible}.training-card-body h4{color:#202a43;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-height:42px;margin:12px 0 0;font-size:14px;font-weight:400;line-height:20px;display:-webkit-box;overflow:hidden}.training-note{color:#707a8f;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:8px 0 0;font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}.training-card-meta{text-align:center;justify-items:center;gap:7px;margin-top:auto;padding-top:13px;display:grid}.training-card-meta time{color:#737d91;font-size:15px;font-weight:650}.open-media-button{color:#4a51c9;background:#eef0ff;border-radius:8px;width:100%;margin-top:12px;padding:10px 8px;font-weight:750}.open-media-button:hover{background:#e3e6ff}.open-media-button:disabled{color:#9299a8;cursor:default;background:#f2f3f6}.training-card-menu-wrap{flex:none;position:relative}.training-card-menu-button{color:#616b80;border-radius:8px;place-items:center;width:36px;height:36px;line-height:1;display:grid;font-size:23px!important}.training-card-menu-button:hover,.training-card-menu-button[aria-expanded=true]{color:#4f54df;background:#eef0fb}.training-card-dropdown{z-index:30;background:#fff;border:1px solid #e0e4ee;border-radius:10px;width:185px;padding:6px;position:absolute;top:39px;right:0;box-shadow:0 16px 38px #15204425}.training-card-dropdown button{text-align:left;border-radius:7px;width:100%;padding:10px;display:block}.training-card-dropdown button:hover{background:#f3f4fa}.training-card-dropdown .danger{color:#a13d51}.training-detail-modal{width:min(1080px,100%)}.coach-media-thumbnail{cursor:zoom-in;background:#10162d;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.coach-media-thumbnail>span{color:#fff;background:#080f23d1;border-radius:8px;align-items:center;gap:5px;padding:5px 8px;font-size:11px;display:inline-flex;position:absolute;bottom:8px;right:8px}.coach-media-thumbnail svg,.coach-media-actions svg,.coach-media-viewer button svg{width:16px;height:16px}.coach-media-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:9px 9px 0;display:grid}.coach-media-actions button{color:#4650bd;background:#f5f6fb;border:1px solid #dfe3ed;border-radius:9px;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:38px;padding:7px 5px;font-size:12px;font-weight:700;display:inline-flex}.coach-media-actions button:disabled,.coach-media-viewer footer button:disabled{cursor:wait;opacity:.6}.coach-media-viewer-backdrop{z-index:1300;background:#050a19e6;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.coach-media-viewer{background:#070d20;border-radius:16px;grid-template-columns:minmax(0,7fr) minmax(240px,3fr);width:min(1200px,100%);height:min(820px,100dvh - 40px);max-height:calc(100dvh - 40px);display:grid;position:relative;overflow:hidden;box-shadow:0 28px 90px #00000073}.coach-media-viewer>img{object-fit:contain;object-position:center;background:#070d20;place-self:center;width:auto;min-width:0;max-width:100%;height:auto;min-height:0;max-height:100%;display:block}.coach-media-viewer>video{object-fit:contain;object-position:center;background:#070d20;width:100%;min-width:0;height:100%;min-height:0;display:block}.coach-media-viewer-close{z-index:2;color:#fff;background:#080f23e0;border:0;border-radius:10px;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:10px;right:10px}.coach-media-viewer footer{color:#1b2540;overflow-wrap:anywhere;background:#fff;align-content:center;gap:14px;min-width:0;padding:64px 22px 22px;display:grid;overflow-y:auto}.coach-media-viewer footer p{color:#b42318;margin:0;font-size:13px}.coach-media-viewer footer button{color:#fff;background:#555be4;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:9px 12px;font-weight:750;display:inline-flex}.training-edit-form{max-width:1180px}.training-detail-modal .media-modal-head p{color:#737d91;margin:10px 0 0;font-size:14px}.detail-media-grid{grid-template-columns:repeat(auto-fill,minmax(min(190px,100%),1fr));margin-top:0}@media (max-width:900px){.coach-media-viewer{grid-template-columns:minmax(0,7fr) minmax(220px,3fr)}.coach-media-viewer footer{padding:64px 16px 16px}.training-day-list{padding-left:18px;padding-right:18px}.training-card-track{scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;gap:14px;padding:2px 2px 14px;scroll-padding-inline:2px;display:flex;overflow:auto visible}.compact-training-card{scroll-snap-align:start;flex:0 0 clamp(270px,44vw,340px)}}@media (max-width:560px){.training-day-list{gap:24px;padding:20px 14px 26px}.training-day-group>header{flex-wrap:wrap;margin-bottom:12px}.training-day-group>header h3{font-size:17px}.compact-training-card{flex-basis:min(82vw,310px)}.training-card-body{min-height:220px}.training-detail-modal{padding:18px 14px}}.app-shell aside{background:var(--narilo-dark-sidebar)}.dashboard-welcome h1{margin-bottom:0}.dashboard-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.dashboard-stat{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-card);min-width:0;box-shadow:var(--shadow-card);align-items:flex-start;gap:14px;padding:18px;display:flex}.dashboard-stat>svg{width:38px;height:38px;stroke-width:var(--icon-stroke);border-radius:11px;flex:none;padding:9px}.dashboard-stat.purple>svg{color:var(--narilo-purple);background:color-mix(in srgb,var(--narilo-purple) 11%,#fff)}.dashboard-stat.blue>svg{color:var(--narilo-blue);background:color-mix(in srgb,var(--narilo-blue) 11%,#fff)}.dashboard-stat.teal>svg{color:#0f9f7c;background:color-mix(in srgb,var(--narilo-teal) 13%,#fff)}.dashboard-stat.indigo>svg{color:color-mix(in srgb,var(--narilo-purple) 70%,var(--narilo-blue));background:color-mix(in srgb,var(--narilo-purple) 8%,#fff)}.dashboard-stat>div{min-width:0}.dashboard-stat span,.dashboard-stat small{display:block}.dashboard-stat span{color:var(--color-text-secondary);font-size:14px;line-height:20px}.dashboard-stat strong{color:var(--narilo-navy);margin:5px 0 3px;font-size:27px;font-weight:600;line-height:32px;display:block}.dashboard-stat small{color:var(--color-text-secondary);font-size:13px;line-height:18px}.dashboard-overview-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:18px;margin-top:18px;display:grid}.dashboard-overview-grid .panel{min-width:0}.dashboard-overview-grid .panel-head h2{margin-bottom:0}.dashboard-empty{color:var(--color-text-secondary);text-align:center;padding:28px 12px;font-size:14px}.dashboard-progress-list,.dashboard-training-list{display:grid}.dashboard-progress-list>button{border-top:1px solid var(--color-border);text-align:left;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:12px 0;display:flex}.dashboard-progress-list>button:first-child,.dashboard-training-list>button:first-of-type{border-top:0}.dashboard-progress-list>button>div:first-child{min-width:0}.dashboard-progress-list strong,.dashboard-progress-list small{display:block}.dashboard-progress-list strong{font-size:14px;font-weight:500;line-height:20px}.dashboard-progress-list small{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:13px;line-height:18px;overflow:hidden}.dashboard-athlete-sports small+small{margin-top:0}.dashboard-progress-list .athlete-sparkline{min-width:138px}.dashboard-training-list{--dashboard-training-columns:minmax(140px,1.2fr) minmax(140px,1.2fr) minmax(160px,.8fr) 105px}.dashboard-training-list-head,.dashboard-training-list>button{grid-template-columns:var(--dashboard-training-columns);align-items:center;gap:10px;min-width:0;display:grid}.dashboard-training-list-head{color:var(--color-text-secondary);padding:0 0 8px;font-size:12px;font-weight:500;line-height:18px}.dashboard-training-list-head span:nth-child(4){text-align:right}.dashboard-training-list>button{border-top:1px solid var(--color-border);text-align:left;padding:12px 0}.dashboard-training-list strong,.dashboard-training-list span{display:block}.dashboard-training-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;line-height:20px;overflow:hidden}.dashboard-training-list span{color:var(--color-text-secondary);font-size:13px;line-height:18px}.dashboard-training-list time{color:var(--color-text-secondary);font-size:14px;font-weight:400;line-height:20px}.dashboard-training-main,.dashboard-training-skill{min-width:0}.dashboard-training-main>span,.dashboard-training-skill>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-training-list time{white-space:nowrap;text-align:right;justify-self:end}.dashboard-training-status{justify-content:flex-start;align-items:center;min-width:0;display:flex}.dashboard-training-status .media-status{white-space:nowrap;grid-template-columns:22px max-content;justify-content:start;align-items:center;gap:8px;padding-left:0;padding-right:0;font-size:14px;font-weight:400;display:grid}.dashboard-training-status .media-status-icon{justify-self:center;width:22px;min-width:22px;height:21px;display:block}.dashboard-training-status .media-status>span{font-size:14px;font-weight:400;line-height:20px}.dashboard-training-status .media-status.neutral{padding-left:30px;display:block}@media (max-width:1180px){.dashboard-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-overview-grid{grid-template-columns:1fr}}@media (max-width:700px){.dashboard-stat-grid{grid-template-columns:1fr}.dashboard-training-list-head{display:none}.dashboard-training-list>button{grid-template-columns:minmax(0,1fr) minmax(150px,auto);align-items:start;gap:6px 12px}.dashboard-training-main{grid-area:1/1}.dashboard-training-skill{grid-area:2/1}.dashboard-training-status{grid-area:1/2;justify-content:flex-end}.dashboard-training-list time{grid-area:2/2;align-self:end}}.dashboard-dark{background:var(--narilo-dark-bg);min-height:100vh;color:var(--narilo-dark-text)}.dashboard-dark .dashboard-welcome h1{color:var(--narilo-dark-text)}.dashboard-dark .dashboard-welcome p{color:var(--narilo-blue)}.dashboard-dark .dashboard-stat,.dashboard-dark .dashboard-overview-grid .panel{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface);color:var(--narilo-dark-text);box-shadow:0 12px 30px #00000024}.dashboard-dark .dashboard-stat span,.dashboard-dark .dashboard-stat small,.dashboard-dark .dashboard-empty,.dashboard-dark .dashboard-progress-list small,.dashboard-dark .dashboard-training-list span,.dashboard-dark .dashboard-training-list time,.dashboard-dark .dashboard-training-list-head{color:var(--narilo-dark-text-secondary)}.dashboard-dark .dashboard-stat strong,.dashboard-dark .panel-head h2,.dashboard-dark .dashboard-progress-list strong,.dashboard-dark .dashboard-training-list strong{color:var(--narilo-dark-text)}.dashboard-dark .dashboard-stat.purple>svg{background:color-mix(in srgb,var(--narilo-purple) 18%,var(--narilo-dark-surface))}.dashboard-dark .dashboard-stat.blue>svg{background:color-mix(in srgb,var(--narilo-blue) 16%,var(--narilo-dark-surface))}.dashboard-dark .dashboard-stat.teal>svg{background:color-mix(in srgb,var(--narilo-teal) 16%,var(--narilo-dark-surface))}.dashboard-dark .dashboard-stat.indigo>svg{background:color-mix(in srgb,var(--narilo-purple) 13%,var(--narilo-dark-surface))}.dashboard-dark .dashboard-progress-list>button,.dashboard-dark .dashboard-training-list>button{border-color:var(--narilo-dark-border);color:var(--narilo-dark-text);transition:background-color .16s}.dashboard-dark .dashboard-progress-list>button:hover,.dashboard-dark .dashboard-training-list>button:hover{background:var(--narilo-dark-surface-hover)}:is(.dashboard-dark .dashboard-progress-list>button:focus-visible,.dashboard-dark .dashboard-training-list>button:focus-visible){outline:2px solid var(--narilo-blue);outline-offset:3px;border-radius:var(--radius-control)}.dashboard-dark .dashboard-training-status .media-status>span{color:var(--narilo-dark-text)}.dashboard-dark .dashboard-training-status .media-status.neutral>span{color:var(--narilo-dark-text-secondary)}.dashboard-dark .athlete-sparkline .progress-area{fill:url(#narilo-mini-area-dark)}.dashboard-dark .athlete-sparkline .progress-line{stroke:url(#narilo-mini-line-dark);stroke-width:2.7px}.dashboard-dark .athlete-sparkline .progress-dot{fill:var(--narilo-dark-surface);stroke:var(--narilo-blue);stroke-width:1.8px}.dashboard-dark .athlete-sparkline .progress-dot-current{fill:var(--narilo-teal);stroke:var(--narilo-dark-surface);filter:drop-shadow(0 2px 4px #22d3a657)}.dashboard-dark .athlete-sparkline .progress-dot-halo{fill:#22d3a62b}.dashboard-dark .athlete-sparkline.single>span,.dashboard-dark .sparkline-empty{color:var(--narilo-dark-text-secondary)}.dashboard-dark .progress-tooltip{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);color:var(--narilo-dark-text-secondary);box-shadow:0 14px 32px #00000047}.dashboard-dark .progress-tooltip strong{color:var(--narilo-dark-text)}.athletes-dark{background:var(--narilo-dark-bg);min-height:100vh;color:var(--narilo-dark-text)}.athletes-dark .page-head h1,.athletes-dark .add-form h2,.athletes-dark .add-form label,.athletes-dark .sport-checkboxes legend{color:var(--narilo-dark-text)}.athletes-dark .page-head small,.athletes-dark .toolbar>span,.athletes-dark .form-section p,.athletes-dark .form-grid label>small{color:var(--narilo-dark-text-secondary)}.athletes-dark .btn{background:linear-gradient(135deg,var(--narilo-purple),var(--narilo-blue));box-shadow:0 10px 24px #00c2ff1f}.athletes-dark .toolbar label,.athletes-dark .toolbar>button{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface);color:var(--narilo-dark-text-secondary)}.athletes-dark .toolbar input{color:var(--narilo-dark-text);background:0 0}.athletes-dark .toolbar input::placeholder,.athletes-dark .form-grid input::placeholder{color:var(--narilo-dark-text-secondary);opacity:.72}.athletes-dark .toolbar label:focus-within{border-color:var(--narilo-purple);box-shadow:0 0 0 3px color-mix(in srgb,var(--narilo-purple) 20%,transparent)}.athletes-dark .athlete-list{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface);box-shadow:0 12px 30px #00000024}.athletes-dark .list-head{background:var(--narilo-dark-surface-hover);color:var(--narilo-dark-text-secondary)}.athletes-dark .athlete-list-row{border-color:var(--narilo-dark-border);color:var(--narilo-dark-text)}.athletes-dark .profile-list .athlete-list-row:hover{background:var(--narilo-dark-surface-hover)}.athletes-dark .athlete-name-link{color:var(--narilo-dark-text);font-weight:500}.athletes-dark .athlete-name-link:hover{color:var(--narilo-blue)}.athletes-dark .athlete-sports-inline{color:var(--narilo-dark-text-secondary);gap:1px;display:grid}.athletes-dark .athlete-sports-inline span:after{content:none}.athletes-dark .athlete-year,.athletes-dark .last-training,.athletes-dark .vertical-dots{color:var(--narilo-dark-text-secondary)}.athletes-dark .vertical-dots:hover,.athletes-dark .vertical-dots[aria-expanded=true]{background:color-mix(in srgb,var(--narilo-purple) 17%,var(--narilo-dark-surface));color:var(--narilo-dark-text)}.athletes-dark .athlete-dropdown{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);color:var(--narilo-dark-text);box-shadow:0 18px 42px #00000052}.athletes-dark .athlete-dropdown button:hover{background:color-mix(in srgb,var(--narilo-purple) 16%,transparent)}.athletes-dark .athlete-dropdown .danger{color:#f87171}.athletes-dark .athlete-sparkline .progress-area{fill:url(#narilo-mini-area-dark)}.athletes-dark .athlete-sparkline .progress-line{stroke:url(#narilo-mini-line-dark);stroke-width:2.7px}.athletes-dark .athlete-sparkline .progress-dot{fill:var(--narilo-dark-surface);stroke:var(--narilo-blue);stroke-width:1.8px}.athletes-dark .athlete-sparkline .progress-dot-current{fill:var(--narilo-teal);stroke:var(--narilo-dark-surface);filter:drop-shadow(0 2px 4px #22d3a657)}.athletes-dark .athlete-sparkline .progress-dot-halo{fill:#22d3a62b}.athletes-dark .sparkline-empty,.athletes-dark .athlete-sparkline.single>span{color:var(--narilo-dark-text-secondary)}.athletes-dark .add-form{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface);box-shadow:0 12px 30px #00000024}.athletes-dark .form-section,.athletes-dark .form-actions{border-color:var(--narilo-dark-border)}.athletes-dark .section-number{background:color-mix(in srgb,var(--narilo-purple) 18%,var(--narilo-dark-surface));color:var(--narilo-blue)}.athletes-dark .form-grid input{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);color:var(--narilo-dark-text)}.athletes-dark .form-grid input:focus{border-color:var(--narilo-purple);box-shadow:0 0 0 3px color-mix(in srgb,var(--narilo-purple) 20%,transparent)}.athletes-dark .sport-checkboxes{border-color:var(--narilo-dark-border)}.athletes-dark .sport-checkboxes input{accent-color:var(--narilo-purple)}.athletes-dark .form-actions>button:first-child,.athletes-dark .crumb{color:var(--narilo-dark-text-secondary)}.athletes-dark .form-actions>button:first-child:hover,.athletes-dark .crumb:hover{color:var(--narilo-dark-text)}.athletes-dark .toolbar>button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athletes-dark .vertical-dots:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athletes-dark .athlete-name-link:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athletes-dark .athlete-dropdown button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athletes-dark .training-panel,.athletes-dark .training-composer-card{--color-card:var(--narilo-dark-surface-hover);--color-text:var(--narilo-dark-text);--color-text-secondary:var(--narilo-dark-text-secondary);--color-border:#ffffff1f;border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface);color:var(--narilo-dark-text);box-shadow:0 12px 30px #00000024}.athletes-dark .training-head,.athletes-dark .training-composer-card .form-section,.athletes-dark .training-composer-card .status-column-block,.athletes-dark .training-composer-card .inline-training-actions{border-color:var(--narilo-dark-border)}.athletes-dark .training-edit-form .training-composer-actions{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface);color:var(--narilo-dark-text)}.athletes-dark .training-edit-form .media-draft,.athletes-dark .training-edit-form .title-skill-suggestion{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);color:var(--narilo-dark-text)}.athletes-dark .training-edit-form .media-draft-head strong,.athletes-dark .training-edit-form .title-skill-suggestion strong,.athletes-dark .training-edit-form .media-draft-grid label,.athletes-dark .training-edit-form .training-select{color:var(--narilo-dark-text)}.athletes-dark .training-edit-form .media-draft-head span,.athletes-dark .training-edit-form .title-skill-suggestion p,.athletes-dark .training-edit-form .skill-combobox small{color:var(--narilo-dark-text-secondary)}.athletes-dark .training-edit-form .media-draft-grid input,.athletes-dark .training-edit-form .media-draft-grid select,.athletes-dark .training-edit-form .media-draft-grid textarea,.athletes-dark .training-edit-form .training-select select{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface);color:var(--narilo-dark-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.athletes-dark .training-head h2,.athletes-dark .training-composer-card .form-section h2,.athletes-dark .training-composer-card .form-grid label,.athletes-dark .training-composer-card .status-selector legend{color:var(--narilo-dark-text)}.athletes-dark .training-head p{color:var(--narilo-blue)}.athletes-dark .training-head>span,.athletes-dark .training-head-actions>span,.athletes-dark .training-filter span,.athletes-dark .training-composer-card .form-section p,.athletes-dark .training-composer-card .form-grid label>small{color:var(--narilo-dark-text-secondary)}.athletes-dark .training-filter select,.athletes-dark .training-composer-card .form-grid input,.athletes-dark .training-composer-card .form-grid select,.athletes-dark .training-composer-card .form-grid textarea{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);color:var(--narilo-dark-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.athletes-dark .training-filter select:focus,.athletes-dark .training-composer-card .form-grid input:focus,.athletes-dark .training-composer-card .form-grid select:focus,.athletes-dark .training-composer-card .form-grid textarea:focus{border-color:var(--narilo-purple);box-shadow:0 0 0 3px color-mix(in srgb,var(--narilo-purple) 22%,transparent);outline:none}.athletes-dark .training-composer-card .form-grid input::placeholder,.athletes-dark .training-composer-card .form-grid textarea::placeholder{color:var(--narilo-dark-text-secondary);opacity:1}.athletes-dark .profile-tabs{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface)}.athletes-dark .profile-tabs button{color:var(--narilo-dark-text-secondary)}.athletes-dark .profile-tabs button:hover{background:var(--narilo-dark-surface-hover);color:var(--narilo-dark-text)}.athletes-dark .profile-tabs button.active{color:#fff;background:#5547c6}.athletes-dark .btn{color:#fff;background:#5547c6;border-color:#5547c6;box-shadow:0 10px 24px #5547c638}.athletes-dark .btn:hover:not(:disabled){background:#4c3fc0}.athletes-dark .profile-actions .btn.secondary{border-color:color-mix(in srgb,var(--narilo-purple) 70%,#fff);background:var(--narilo-dark-surface);color:var(--narilo-dark-text);box-shadow:none}.athletes-dark .profile-actions .btn.secondary:hover:not(:disabled){background:var(--narilo-dark-surface-hover)}.athletes-dark .profile-actions .btn.secondary:disabled{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface);color:var(--narilo-dark-text-secondary);opacity:.58}.athletes-dark .skill-progress-card,.athletes-dark .compact-training-card,.athletes-dark .media-card{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);color:var(--narilo-dark-text);box-shadow:0 8px 22px #00000024}.athletes-dark .skill-progress-card h3,.athletes-dark .skill-progress-card dd,.athletes-dark .compact-training-card h4,.athletes-dark .media-card strong{color:var(--narilo-dark-text)}.athletes-dark .skill-progress-card dt,.athletes-dark .skill-progress-card>p,.athletes-dark .training-day-group>header span,.athletes-dark .training-note,.athletes-dark .training-card-meta time,.athletes-dark .media-date{color:var(--narilo-dark-text-secondary)}.athletes-dark .training-day-group>header h3{color:var(--narilo-dark-text)}.athletes-dark .training-card-preview,.athletes-dark .training-no-media{background:var(--narilo-dark-surface);color:var(--narilo-dark-text-secondary)}.athletes-dark .training-card-menu-button{color:var(--narilo-dark-text-secondary)}.athletes-dark .training-card-menu-button:hover,.athletes-dark .training-card-menu-button[aria-expanded=true]{background:color-mix(in srgb,var(--narilo-purple) 17%,var(--narilo-dark-surface));color:var(--narilo-dark-text)}.athletes-dark .training-card-dropdown{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface);box-shadow:0 18px 42px #00000057}.athletes-dark .training-card-dropdown button{color:var(--narilo-dark-text)}.athletes-dark .training-card-dropdown button:hover{background:color-mix(in srgb,var(--narilo-purple) 16%,transparent)}.athletes-dark .training-card-dropdown .danger{color:#fca5a5}.athletes-dark .open-media-button,.athletes-dark .media-picker{border-color:color-mix(in srgb,var(--narilo-purple) 72%,#fff);background:color-mix(in srgb,var(--narilo-purple) 14%,var(--narilo-dark-surface-hover));color:#c9c2ff}.athletes-dark .open-media-button:hover,.athletes-dark .media-picker:hover{background:color-mix(in srgb,var(--narilo-purple) 24%,var(--narilo-dark-surface-hover))}.athletes-dark .status-selector label{border-color:var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);color:var(--narilo-dark-text)}.athletes-dark .status-selector label:hover{border-color:color-mix(in srgb,var(--narilo-purple) 70%,#fff);background:color-mix(in srgb,var(--narilo-purple) 12%,var(--narilo-dark-surface-hover))}.athletes-dark .status-selector label.selected{background:color-mix(in srgb,var(--narilo-purple) 22%,var(--narilo-dark-surface-hover));border-color:#a78bfa}.athletes-dark .media-status>span{color:var(--narilo-dark-text)}.athletes-dark .status-selector label.new .status-selector-icon,.athletes-dark .media-status.new .media-status-icon{color:#60a5fa}.athletes-dark .status-selector label.practicing .status-selector-icon,.athletes-dark .media-status.practicing .media-status-icon{color:#fb923c}.athletes-dark .status-selector label.improving .status-selector-icon,.athletes-dark .media-status.improving .media-status-icon{color:#facc15}.athletes-dark .status-selector label.stable .status-selector-icon,.athletes-dark .media-status.stable .media-status-icon{color:#a78bfa}.athletes-dark .status-selector label.mastered .status-selector-icon,.athletes-dark .media-status.mastered .media-status-icon{color:#4ade80}.athletes-dark .first-measure{border-color:color-mix(in srgb,var(--narilo-purple) 45%,transparent);background:color-mix(in srgb,var(--narilo-purple) 18%,var(--narilo-dark-surface-hover));color:#c9c2ff}.confirm-modal{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);box-shadow:0 28px 80px #0000006b}.confirm-modal h2{color:var(--narilo-dark-text)}.confirm-modal p,.confirm-modal>div>button:first-child{color:var(--narilo-dark-text-secondary)}.confirm-modal>div>button:first-child:hover{color:var(--narilo-dark-text)}.athlete-account-panel{border:1px solid var(--narilo-dark-border);border-radius:var(--radius-card);background:var(--narilo-dark-surface);color:var(--narilo-dark-text);justify-content:space-between;align-items:center;gap:18px;margin:18px 0 20px;padding:14px 16px;display:flex;box-shadow:0 10px 26px #0000001f}.athlete-account-panel>div{gap:3px;min-width:0;display:grid}.athlete-account-panel>div>span{color:var(--narilo-dark-text-secondary);letter-spacing:.08em;font-size:12px;font-weight:500}.athlete-account-panel .training-empty{color:var(--narilo-dark-text-secondary);padding:8px 0}.athlete-account-panel .training-empty strong{color:var(--narilo-dark-text)}.athlete-account-panel small{color:var(--narilo-dark-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.athlete-account-status{width:fit-content;font-size:15px;font-weight:500}.athlete-account-status.pending{color:var(--narilo-blue)}.athlete-account-status.active{color:var(--narilo-teal)}.athlete-account-status.revoked{color:#fbbf24}.athlete-account-status.none{color:var(--narilo-dark-text-secondary)}.athlete-invite-button{border:1px solid color-mix(in srgb,var(--narilo-purple) 48%,var(--narilo-dark-border));border-radius:var(--radius-control);background:color-mix(in srgb,var(--narilo-purple) 14%,var(--narilo-dark-surface));min-height:42px;color:var(--narilo-dark-text);font:500 14px/20px var(--font-family-primary);flex:none;justify-content:center;align-items:center;gap:8px;padding:9px 14px;display:inline-flex}.athlete-invite-button svg{width:18px;height:18px;color:var(--narilo-blue)}.athlete-invite-button:hover:not(:disabled){background:color-mix(in srgb,var(--narilo-purple) 24%,var(--narilo-dark-surface))}.athlete-invite-button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athlete-invite-button:disabled{cursor:not-allowed;opacity:.62}.athlete-invite-modal{border:1px solid var(--narilo-dark-border);border-radius:var(--radius-card);background:var(--narilo-dark-surface);width:min(480px,100vw - 32px);color:var(--narilo-dark-text);padding:24px;box-shadow:0 28px 80px #0000007a}.athlete-invite-modal-head{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.athlete-invite-modal-head span{color:var(--narilo-blue);letter-spacing:.08em;font-size:12px;font-weight:500}.athlete-invite-modal-head h2{color:var(--narilo-dark-text);margin:4px 0 3px;font-size:24px;line-height:32px}.athlete-invite-modal-head strong{color:var(--narilo-dark-text-secondary);font-size:14px;font-weight:400}.athlete-invite-modal-head>button{border-radius:var(--radius-control);width:36px;height:36px;color:var(--narilo-dark-text-secondary);flex:none;place-items:center;font-size:24px;display:grid}.athlete-invite-modal-head>button:hover:not(:disabled){background:var(--narilo-dark-surface-hover);color:var(--narilo-dark-text)}.athlete-invite-modal>label{color:var(--narilo-dark-text);gap:8px;font-size:14px;display:grid}.athlete-invite-modal input{border:1px solid var(--narilo-dark-border);border-radius:var(--radius-control);background:var(--narilo-dark-surface-hover);width:100%;min-height:46px;color:var(--narilo-dark-text);font:400 16px/24px var(--font-family-primary);padding:10px 12px}.athlete-invite-modal input::placeholder{color:var(--narilo-dark-text-secondary);opacity:.7}.athlete-invite-modal input:focus{border-color:var(--narilo-purple);box-shadow:0 0 0 3px color-mix(in srgb,var(--narilo-purple) 22%,transparent);outline:0}.athlete-invite-modal>p{color:var(--narilo-dark-text-secondary);margin:12px 0 0;font-size:14px;line-height:22px}.athlete-invite-error{border-radius:var(--radius-control);color:#fecaca;background:#7f1d1d38;border:1px solid #f8717161;margin-top:14px;padding:10px 12px;font-size:14px;line-height:20px}.athlete-invite-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.athlete-invite-actions>button:first-child{color:var(--narilo-dark-text-secondary);padding:9px 14px}.athlete-invite-actions>button:first-child:hover:not(:disabled){color:var(--narilo-dark-text)}@media (max-width:600px){.athlete-account-panel{flex-direction:column;align-items:stretch}.athlete-invite-button{width:100%}.athlete-invite-modal{padding:20px}.athlete-invite-actions{flex-direction:column-reverse}.athlete-invite-actions>button{width:100%;min-height:44px}}.app-shell aside .nav-brand,.mobile-appbar .nav-brand{justify-content:flex-start;min-width:0;padding:0 12px}.app-shell aside .nav-brand img,.mobile-appbar .nav-brand img{object-fit:contain;object-position:left center;width:152px;max-width:100%;height:auto;max-height:52px;display:block}.app-shell .role{color:color-mix(in srgb,var(--narilo-blue) 58%,#fff);letter-spacing:1.4px;margin:34px 12px 14px;font-size:12px;font-weight:500}.app-shell aside nav{gap:6px}.app-shell aside nav button{border-radius:var(--radius-control);width:100%;min-height:44px;color:color-mix(in srgb,#fff 64%,var(--narilo-blue));font-family:var(--font-family-primary);border:1px solid #0000;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:400;line-height:20px;transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s;display:flex}.app-shell aside nav button:hover{background:color-mix(in srgb,var(--narilo-purple) 13%,transparent);color:#fff}.app-shell aside nav button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.app-shell .nav-brand:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.app-shell .nav-logout:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.app-shell aside nav button.active{border-color:color-mix(in srgb,var(--narilo-blue) 28%,transparent);background:color-mix(in srgb,var(--narilo-purple) 25%,transparent);color:#fff;box-shadow:inset 3px 0 0 var(--narilo-teal)}.app-shell aside nav button .nav-icon{width:var(--icon-size-md);height:var(--icon-size-md);stroke-width:var(--icon-stroke);flex:none}.app-shell aside nav button.active .nav-icon{color:var(--narilo-teal)}.app-shell aside nav button b{background:color-mix(in srgb,var(--narilo-blue) 15%,transparent);color:#fff;text-align:center;border-radius:999px;min-width:24px;margin-left:auto;padding:2px 7px;font-size:12px;font-weight:500;line-height:18px}.app-shell .coach{border-top-color:color-mix(in srgb,var(--narilo-blue) 16%,transparent);grid-template-columns:38px minmax(0,1fr) 36px;column-gap:8px;width:100%;min-width:0;padding:22px 0 0;display:grid}.app-shell .coach .avatar{background:color-mix(in srgb,var(--narilo-purple) 36%,var(--narilo-navy))}.app-shell .coach>div:nth-child(2){grid-area:1/2/auto/4;align-self:center;min-width:0}.app-shell .coach strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;padding-right:42px;font-weight:500;display:block;overflow:hidden}.app-shell .coach small{width:100%;min-width:0;color:color-mix(in srgb,#fff 72%,var(--narilo-blue));font-family:var(--font-family-primary);opacity:1;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;font-weight:400;line-height:15px;display:block;overflow:hidden}.app-shell .nav-logout{z-index:1;border-radius:var(--radius-control);width:36px;min-width:36px;height:36px;color:color-mix(in srgb,#fff 64%,var(--narilo-blue));flex:none;grid-area:1/3;align-self:start;place-items:center;margin-left:0;transition:background-color .16s,color .16s;display:grid}.app-shell .nav-logout:hover{background:color-mix(in srgb,var(--narilo-purple) 16%,transparent);color:#fff}.app-shell .nav-logout svg{width:var(--icon-size-md);height:var(--icon-size-md);stroke-width:var(--icon-stroke)}.mobile-appbar{background:var(--narilo-navy);border-bottom:1px solid color-mix(in srgb,var(--narilo-blue) 18%,transparent);box-shadow:0 8px 24px #0b132b24}@media (max-width:900px){:is(.app-shell>.app-main,.app-shell>.app-main:has(.training-plans-page)){padding-top:128px}.mobile-appbar{height:auto;min-height:112px;padding:max(5px,env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) 8px max(14px,env(safe-area-inset-left,0px));grid-template-rows:48px auto;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;display:grid}.mobile-appbar .nav-brand{grid-area:1/1;padding-left:0}.mobile-appbar .nav-brand img{width:116px;max-height:40px}.mobile-appbar>.nav-logout{grid-area:1/2;align-self:center}.mobile-coach-nav{border:1px solid color-mix(in srgb,var(--narilo-blue) 16%,transparent);background:color-mix(in srgb,var(--narilo-purple) 8%,transparent);border-radius:13px;grid-area:2/1/auto/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;width:100%;padding:4px;display:grid}.mobile-coach-nav button{min-width:0;min-height:46px;color:color-mix(in srgb,#fff 66%,var(--narilo-blue));border-radius:9px;align-content:center;place-items:center;gap:2px;padding:5px 3px;font-size:10px;line-height:14px;display:grid}.mobile-coach-nav button.active{background:color-mix(in srgb,var(--narilo-purple) 32%,transparent);color:#fff;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--narilo-blue) 30%,transparent)}.mobile-coach-nav button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:1px}.mobile-coach-nav svg{width:19px;height:19px}.mobile-coach-nav span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}.invite-accept-page,.athlete-loading{background:var(--narilo-dark-bg);min-height:100vh;color:var(--narilo-dark-text);place-items:center;padding:24px;display:grid}.invite-accept-card{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:24px;width:min(100%,480px);padding:36px;box-shadow:0 24px 80px #00000052}.invite-accept-card>img{width:140px;height:auto;margin-bottom:34px}.invite-accept-card h1{margin:6px 0 10px;font-size:30px}.invite-accept-card p{color:var(--narilo-dark-text-secondary);line-height:1.6}.invite-accept-card form>span{color:var(--narilo-blue);letter-spacing:.1em;font-size:12px}.invite-accept-card label{gap:7px;margin-top:18px;font-size:14px;display:grid}.invite-accept-card label>div{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);border-radius:12px;align-items:center;gap:9px;padding:0 12px;display:flex}.invite-accept-card label svg{width:18px;color:var(--narilo-dark-text-secondary)}.invite-accept-card input{min-height:48px;color:var(--narilo-dark-text);font:inherit;background:0 0;border:0;outline:0;flex:1}.invite-accept-card .btn{width:100%;margin-top:22px}.form-error{color:#fecaca!important}.forgot-password-link{width:max-content;color:var(--narilo-purple);margin:-8px 0 20px auto;font-size:13px;font-weight:500;line-height:20px;text-decoration:none;display:block}.forgot-password-link:hover{color:var(--narilo-blue);text-decoration:underline}.forgot-password-link:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:3px;border-radius:4px}.recovery-page{background:var(--narilo-dark-bg);min-height:100vh;color:var(--narilo-dark-text);place-items:center;padding:24px;display:grid}.recovery-card{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:24px;width:min(100%,480px);padding:36px;box-shadow:0 24px 80px #00000052}.recovery-card>img{object-fit:contain;width:140px;height:auto;margin-bottom:34px;display:block}.recovery-card form>p,.recovery-success>p{color:var(--narilo-blue);letter-spacing:.1em;margin:0;font-size:12px;font-weight:600}.recovery-card h1{color:var(--narilo-dark-text);margin:7px 0 10px;font-size:30px;line-height:38px}.recovery-card form>span,.recovery-success>span,.recovery-invalid>p{color:var(--narilo-dark-text-secondary);font-size:14px;line-height:22px;display:block}.recovery-card label{color:var(--narilo-dark-text);gap:7px;margin-top:18px;font-size:14px;font-weight:500;display:grid}.recovery-card label>div{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);border-radius:12px;align-items:center;gap:9px;padding:0 12px;transition:border-color .16s,box-shadow .16s;display:flex}.recovery-card label>div:focus-within{border-color:var(--narilo-blue);box-shadow:0 0 0 3px #00c2ff24}.recovery-card label svg{width:18px;color:var(--narilo-dark-text-secondary);flex:none}.recovery-card input{min-width:0;min-height:48px;color:var(--narilo-dark-text);font:inherit;background:0 0;border:0;outline:0;flex:1}.recovery-card input::placeholder{color:var(--narilo-dark-text-secondary);opacity:.72}.recovery-card .btn{width:100%;margin-top:22px}.recovery-card .btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.recovery-card form>a,.recovery-success>a,.recovery-invalid>a{width:max-content;color:var(--narilo-dark-text-secondary);align-items:center;gap:7px;margin:22px auto 0;font-size:13px;text-decoration:none;display:flex}.recovery-card form>a:hover,.recovery-success>a:hover,.recovery-invalid>a:hover{color:var(--narilo-blue)}.recovery-card form>a:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:3px;border-radius:4px}.recovery-success>a:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:3px;border-radius:4px}.recovery-invalid>a:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:3px;border-radius:4px}.recovery-card form>a svg{width:16px}.recovery-error{color:#fecaca!important;margin:14px 0 0!important;font-size:13px!important;line-height:20px!important}.recovery-success>svg{width:42px;height:42px;color:var(--narilo-teal);margin-bottom:20px}.recovery-invalid h1{margin-top:0}.recovery-card>p[role=status]{color:var(--narilo-dark-text-secondary);margin:0}@media (max-width:520px){.recovery-card{border-radius:19px;padding:26px 20px}.recovery-card>img{width:120px;margin-bottom:28px}.recovery-card h1{font-size:25px;line-height:33px}}.invite-success{text-align:center}.invite-success svg{width:54px;height:54px;color:var(--narilo-teal)}.athlete-shell{background:var(--narilo-dark-bg);min-height:100vh;color:var(--narilo-dark-text)}.athlete-shell>header{z-index:5;border-bottom:1px solid var(--narilo-dark-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#070d1fe6;align-items:center;gap:24px;height:72px;padding:0 max(24px,50vw - 590px);display:flex;position:sticky;top:0}.athlete-shell>header img{width:124px;height:auto}.athlete-shell>header span{color:var(--narilo-blue);letter-spacing:.13em;font-size:11px}.athlete-shell>header button{border:1px solid var(--narilo-dark-border);width:40px;height:40px;color:var(--narilo-dark-text-secondary);border-radius:12px;place-items:center;margin-left:auto;display:grid}.athlete-shell>header button svg{width:18px}.athlete-shell>main{width:min(1180px,100% - 48px);margin:auto;padding:52px 0 30px}.athlete-welcome{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:30px;display:flex}.athlete-welcome p,.athlete-dashboard-section header p{color:var(--narilo-blue);letter-spacing:.12em;margin:0 0 6px;font-size:11px}.athlete-welcome h1{margin:0 0 8px;font-size:42px}.athlete-welcome>div>span{color:var(--narilo-dark-text-secondary)}.athlete-welcome>div:last-child{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:16px;grid-template-columns:auto 1fr;gap:2px 10px;max-width:300px;padding:16px 18px;display:grid}.athlete-welcome>div:last-child svg{width:24px;color:var(--narilo-teal);grid-row:1/3}.athlete-welcome>div:last-child span{font-size:12px}.athlete-summary-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.athlete-summary-grid article,.athlete-summary-grid>a{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:18px;grid-template-columns:auto 1fr;gap:5px 12px;padding:22px;display:grid}.athlete-summary-grid>a{color:var(--narilo-dark-text);transition:border-color .16s,background .16s,transform .16s}.athlete-summary-grid>a:hover{background:var(--narilo-dark-surface-hover);border-color:#00c2ff59;transform:translateY(-1px)}.athlete-summary-grid>a:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:3px}.athlete-summary-grid svg{width:22px;color:var(--narilo-purple);grid-row:1/4}.athlete-summary-grid>a svg{color:var(--narilo-blue)}.athlete-summary-grid span{color:var(--narilo-dark-text-secondary);letter-spacing:.1em;font-size:10px}.athlete-summary-grid strong{font-size:20px}.athlete-summary-grid p{color:var(--narilo-dark-text-secondary);margin:0;font-size:13px}.athlete-dashboard-section{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:20px;margin-top:24px;padding:26px}.athlete-dashboard-section>header{justify-content:space-between;align-items:flex-end;margin-bottom:20px;display:flex}.athlete-dashboard-section h2{margin:0;font-size:24px}.athlete-dashboard-section>header>span,.athlete-empty{color:var(--narilo-dark-text-secondary)}.athlete-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.athlete-skill-grid article{background:var(--narilo-dark-surface-hover);border-radius:15px;grid-template-columns:1fr 1.3fr;align-items:center;gap:18px;padding:18px;display:grid}.athlete-skill-grid h3{margin:4px 0 10px}.athlete-skill-grid article>div>span:first-child{color:var(--narilo-blue);font-size:11px}.athlete-training-list{gap:10px;display:grid}.athlete-training-list article{background:var(--narilo-dark-surface-hover);border-radius:14px;grid-template-columns:76px 1fr;gap:18px;padding:15px;display:grid}.athlete-training-list time{color:var(--narilo-teal)}.athlete-training-list span{color:var(--narilo-blue);font-size:11px}.athlete-training-list h3{margin:3px 0}.athlete-training-list p{color:var(--narilo-dark-text-secondary);margin:5px 0 0}.athlete-media-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.athlete-media-grid article{background:var(--narilo-dark-surface-hover);border-radius:14px;overflow:hidden}.athlete-media-grid img,.athlete-media-grid video{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.athlete-media-grid article>div{padding:12px}.athlete-media-grid p{color:var(--narilo-dark-text-secondary);margin:6px 0 0;font-size:12px}.athlete-shell footer{color:var(--narilo-dark-text-secondary);text-align:center;padding:28px 0 0;font-size:12px}@media (max-width:800px){.athlete-shell>main{width:min(100% - 28px,1180px);padding-top:30px}.athlete-welcome{display:grid}.athlete-welcome h1{font-size:34px}.athlete-summary-grid,.athlete-skill-grid{grid-template-columns:1fr}.athlete-media-grid{grid-template-columns:repeat(2,1fr)}}.athlete-app-shell{background:var(--narilo-dark-bg);min-height:100vh;color:var(--narilo-dark-text)}.athlete-appbar{z-index:20;border-bottom:1px solid var(--narilo-dark-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#070d1ff0;grid-template-columns:140px auto 1fr 42px;align-items:center;gap:22px;min-height:72px;padding:10px max(24px,50vw - 590px);display:grid;position:sticky;top:0}.athlete-brand img{object-fit:contain;width:124px;height:auto;display:block}.athlete-appbar>span{color:var(--narilo-blue);letter-spacing:.13em;white-space:nowrap;font-size:11px}.athlete-appbar nav{justify-content:center;gap:5px;display:flex}.athlete-appbar nav a{color:var(--narilo-dark-text-secondary);border:1px solid #0000;border-radius:11px;align-items:center;gap:7px;padding:9px 11px;font-size:14px;line-height:20px;display:flex}.athlete-appbar nav a:hover{color:var(--narilo-dark-text);background:#6c5ce71f}.athlete-appbar nav a.active{color:var(--narilo-dark-text);background:#6c5ce733;border-color:#00c2ff33}.athlete-appbar nav svg,.athlete-appbar>button svg{width:18px;height:18px}.athlete-appbar>button{border:1px solid var(--narilo-dark-border);width:40px;height:40px;color:var(--narilo-dark-text-secondary);border-radius:12px;place-items:center;display:grid}:is(.athlete-appbar a:focus-visible,.athlete-appbar button:focus-visible){outline:2px solid var(--narilo-blue);outline-offset:2px}.athlete-page{width:min(1180px,100% - 48px);margin:auto;padding:44px 0 40px}.athlete-page-head{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.athlete-page-head p,.athlete-section-head p,.athlete-dashboard-section header p{color:var(--narilo-blue);letter-spacing:.12em;margin:0 0 6px;font-size:11px}.athlete-page-head h1,.athlete-section-head h1{margin:0;font-size:34px;line-height:42px}.athlete-readonly{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:15px;align-items:center;gap:10px;padding:13px 15px;display:flex}.athlete-readonly>svg{width:23px;color:var(--narilo-teal)}.athlete-readonly span{display:grid}.athlete-readonly small{color:var(--narilo-dark-text-secondary)}.athlete-overview-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.athlete-dashboard-section{min-width:0}.athlete-dashboard-section>header a{color:var(--narilo-blue);font-size:13px}.athlete-compact-list{gap:8px;display:grid}.athlete-compact-list article{background:var(--narilo-dark-surface-hover);border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:12px 13px;display:flex}.athlete-compact-list article>div{min-width:0;display:grid}.athlete-compact-list small,.athlete-compact-list time{color:var(--narilo-dark-text-secondary);font-size:12px}.athlete-section-head>span{color:var(--narilo-dark-text-secondary);font-size:14px}.athlete-filter-row{gap:12px;display:flex}.athlete-filter{width:fit-content;min-width:220px;color:var(--narilo-dark-text-secondary);gap:5px;margin:0 0 22px;font-size:12px;display:grid}.athlete-filter select{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);min-height:42px;color:var(--narilo-dark-text);font:400 14px/20px var(--font-family-primary);border-radius:11px;padding:8px 34px 8px 11px}.athlete-filter select:focus{border-color:var(--narilo-purple);outline:2px solid #6c5ce73d}.athlete-state{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);min-height:180px;color:var(--narilo-dark-text-secondary);text-align:center;border-radius:18px;align-content:center;place-items:center;gap:8px;padding:24px;display:grid}.athlete-state svg{width:30px;color:var(--narilo-purple)}.athlete-state.error{color:#fecaca}.athlete-training-cards{gap:14px;display:grid}.athlete-training-cards>article{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:18px;padding:20px}.athlete-training-cards>article>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.athlete-training-cards header span{color:var(--narilo-blue);font-size:12px}.athlete-training-cards h2{margin:4px 0 0;font-size:18px}.athlete-training-cards time,.athlete-training-cards footer>span{color:var(--narilo-dark-text-secondary);align-items:center;gap:7px;font-size:13px;display:flex}.athlete-training-cards time svg,.athlete-training-cards footer svg{width:16px}.athlete-training-cards>article>p{color:var(--narilo-dark-text-secondary);margin:15px 0;line-height:1.55}.athlete-training-cards footer{border-top:1px solid var(--narilo-dark-border);justify-content:space-between;align-items:flex-end;gap:16px;margin-top:16px;padding-top:14px;display:flex}.athlete-training-statuses{flex-wrap:wrap;gap:10px;display:flex}.athlete-training-statuses>span{gap:3px;display:grid}.athlete-training-statuses small{color:var(--narilo-dark-text-secondary)}.athlete-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.athlete-progress-grid>article{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:18px;min-width:0;padding:20px}.athlete-progress-grid>article>header{grid-template-columns:1fr auto;align-items:center;gap:4px 12px;display:grid}.athlete-progress-grid header>span:first-child{color:var(--narilo-blue);grid-column:1/-1;font-size:12px}.athlete-progress-grid h2{margin:0;font-size:18px}.athlete-progress-grid dl{grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0;display:grid}.athlete-progress-grid dl div{gap:2px;display:grid}.athlete-progress-grid dt{color:var(--narilo-dark-text-secondary);font-size:11px}.athlete-progress-grid dd{margin:0;font-size:13px}.athlete-media-library{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.athlete-media-library>button{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);color:var(--narilo-dark-text);text-align:left;border-radius:16px;padding:0;overflow:hidden}.athlete-media-library>button:hover{background:var(--narilo-dark-surface-hover);border-color:#00c2ff59}.athlete-media-library img,.athlete-media-library video{aspect-ratio:16/10;object-fit:cover;width:100%;display:block}.athlete-media-library>button>div{gap:6px;padding:13px;display:grid}.athlete-media-library>button>div>span{color:var(--narilo-blue);font-size:11px}.athlete-media-library small{color:var(--narilo-dark-text-secondary)}.athlete-media-modal-backdrop{z-index:50;background:#020617e6;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.athlete-media-modal{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:20px;grid-template-columns:minmax(0,7fr) minmax(240px,3fr);width:min(1200px,100%);height:min(820px,100dvh - 40px);max-height:calc(100dvh - 40px);display:grid;position:relative;overflow:hidden;box-shadow:0 30px 90px #00000073}.athlete-media-modal>img,.athlete-media-modal>video{object-fit:contain;object-position:center;background:#050916;width:100%;min-width:0;height:100%;min-height:0;display:block}.athlete-media-modal>div{overflow-wrap:anywhere;align-content:center;gap:12px;min-width:0;padding:64px 28px 28px;display:grid;overflow-y:auto}.athlete-media-modal>div>span{color:var(--narilo-blue);font-size:12px}.athlete-media-modal h2,.athlete-media-modal p{overflow-wrap:anywhere;margin:0}.athlete-media-modal p,.athlete-media-modal small{color:var(--narilo-dark-text-secondary)}.athlete-media-modal .close{z-index:2;color:#fff;background:#070d1fe0;border-radius:12px;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:12px;right:12px}.athlete-media-modal .close svg{width:19px}@media (max-width:900px){.athlete-appbar{grid-template-columns:120px 1fr 42px;gap:12px;padding:9px 18px}.athlete-appbar>span{display:none}.athlete-appbar nav{justify-content:flex-end}.athlete-appbar nav a span{display:none}.athlete-appbar nav a{padding:10px}.athlete-overview-grid,.athlete-progress-grid{grid-template-columns:1fr}.athlete-media-library{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:600px){.athlete-appbar{grid-template-columns:1fr auto;min-height:64px;padding:8px 14px}.athlete-brand img{width:108px}.athlete-appbar nav{z-index:30;border:1px solid var(--narilo-dark-border);background:#111a32f5;border-radius:16px;justify-content:space-around;padding:6px;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 14px 40px #00000059}.athlete-appbar nav a{justify-items:center;gap:2px;min-width:58px;padding:6px 5px;font-size:10px;display:grid}.athlete-appbar nav a span{display:block}.athlete-page{width:calc(100% - 28px);padding:28px 0 92px}.athlete-page-head{display:grid}.athlete-page-head h1,.athlete-section-head h1{font-size:29px;line-height:36px}.athlete-summary-grid{grid-template-columns:1fr}.athlete-dashboard-section{padding:18px}.athlete-dashboard-section>header{align-items:flex-start;gap:8px}.athlete-dashboard-section h2{font-size:19px}.athlete-media-grid.compact,.athlete-media-library{grid-template-columns:repeat(2,minmax(0,1fr))}.athlete-filter-row{gap:0;display:grid}.athlete-filter{width:100%;min-width:0}.athlete-training-cards>article>header,.athlete-training-cards footer{flex-direction:column;align-items:flex-start}.athlete-progress-grid>article{padding:16px}.athlete-progress-grid dl{grid-template-columns:repeat(2,1fr)}.athlete-media-modal{grid-template-columns:1fr;height:auto;max-height:calc(100dvh - 40px);overflow-y:auto}.athlete-media-modal>img,.athlete-media-modal>video{height:auto;max-height:48vh}.athlete-media-modal>div{padding:20px;overflow:visible}}.athlete-app-shell .media-status{gap:6px;padding:2px 4px;font-size:14px;font-weight:400;line-height:20px}.athlete-app-shell .media-status>span{color:#e2e8f0;font-size:14px;font-weight:400;line-height:20px}.athlete-app-shell .media-status-icon{width:18px;height:18px}.athlete-app-shell .media-status.new .media-status-icon{color:#7dd3fc}.athlete-app-shell .media-status.practicing .media-status-icon{color:#fdba74}.athlete-app-shell .media-status.improving .media-status-icon{color:#fde68a}.athlete-app-shell .media-status.stable .media-status-icon{color:#c4b5fd}.athlete-app-shell .media-status.mastered .media-status-icon{color:var(--narilo-teal)}.athlete-page{width:min(1080px,100% - 48px);padding-top:36px}.athlete-page-head{margin-bottom:22px}.athlete-summary-grid{gap:12px}.athlete-summary-grid article,.athlete-summary-grid>a{border-radius:16px;gap:3px 10px;padding:16px 18px}.athlete-summary-grid strong{font-size:18px;line-height:25px}.athlete-summary-grid p{line-height:19px}.athlete-overview-grid{gap:14px}.athlete-dashboard-section{border-radius:17px;margin-top:16px;padding:18px}.athlete-dashboard-section>header{margin-bottom:13px}.athlete-dashboard-section h2{font-size:20px;line-height:28px}.athlete-compact-list{gap:6px}.athlete-compact-list article{padding:9px 11px}.athlete-media-grid.compact{gap:10px}.athlete-media-grid.compact article>div{padding:9px 10px}.athlete-section-head{margin-bottom:16px}.athlete-filter{min-width:200px;margin-bottom:16px}.athlete-training-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.athlete-training-cards>article{border-radius:16px;flex-direction:column;min-width:0;padding:15px 16px;display:flex}.athlete-training-cards h2{font-size:16px;line-height:23px}.athlete-training-cards>article>p{margin:10px 0;font-size:14px;line-height:21px}.athlete-training-cards footer{align-items:center;margin-top:auto;padding-top:10px}.athlete-training-statuses{gap:7px 10px}.athlete-progress-grid{grid-template-columns:repeat(auto-fit,minmax(340px,480px));justify-content:start;gap:12px}.athlete-progress-grid>article{border-radius:16px;padding:15px 16px}.athlete-progress-grid h2{font-size:16px;line-height:23px}.athlete-progress-grid dl{gap:6px;margin:11px 0}.athlete-progress-grid .skill-chart{height:125px}.athlete-filter-row+.athlete-state{width:min(100%,460px);min-height:112px;padding:20px}.athlete-filter-row+.athlete-state svg{width:24px;height:24px}.athlete-state{min-height:128px}@media (max-width:900px){.athlete-page{width:min(100% - 36px,1080px)}.athlete-training-cards,.athlete-progress-grid{grid-template-columns:1fr}.athlete-progress-grid>article{width:100%}}@media (max-width:600px){.athlete-page{width:calc(100% - 28px);padding-top:24px;padding-bottom:96px}.athlete-page-head{margin-bottom:18px}.athlete-summary-grid article{padding:15px}.athlete-dashboard-section{margin-top:12px;padding:15px}.athlete-training-cards>article{padding:14px}.athlete-training-cards footer{align-items:flex-start}.athlete-progress-grid>article{padding:14px}.athlete-progress-grid .skill-chart{height:120px}.athlete-app-shell .media-status{white-space:normal;min-width:0}.athlete-app-shell .media-status>span{text-align:left}}.athlete-appbar{padding-left:max(40px,50vw - 780px);padding-right:max(40px,50vw - 780px)}.athlete-page{width:min(1560px,100% - 80px)}.athlete-summary-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.athlete-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.athlete-compact-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.athlete-media-grid.compact{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.athlete-training-cards{grid-template-columns:repeat(5,minmax(0,1fr))}.athlete-training-cards>article>header{gap:8px;display:grid}.athlete-training-cards time{justify-self:start}.athlete-training-cards footer{flex-direction:column;align-items:flex-start}.athlete-progress-grid{grid-template-columns:repeat(5,minmax(0,1fr));justify-content:stretch}.athlete-progress-grid>article{width:auto}.athlete-progress-grid>article>header{grid-template-columns:minmax(0,1fr)}.athlete-progress-grid>article>header .media-status{justify-self:start}.athlete-progress-grid dl{grid-template-columns:repeat(2,minmax(0,1fr))}.athlete-media-library{grid-template-columns:repeat(5,minmax(0,1fr))}@media (max-width:1699px){.athlete-training-cards,.athlete-progress-grid,.athlete-media-library{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:1399px){.athlete-appbar{padding-left:32px;padding-right:32px}.athlete-page{width:calc(100% - 64px)}.athlete-training-cards,.athlete-progress-grid,.athlete-media-library{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1099px){.athlete-overview-grid{grid-template-columns:1fr}.athlete-training-cards,.athlete-progress-grid,.athlete-media-library{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.athlete-appbar{padding-left:18px;padding-right:18px}.athlete-page{width:calc(100% - 36px)}}@media (max-width:680px){.athlete-training-cards,.athlete-progress-grid,.athlete-media-library{grid-template-columns:1fr}.athlete-progress-grid>article{width:100%}}@media (max-width:600px){.athlete-page{width:calc(100% - 28px)}.athlete-media-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.athlete-compact-list{grid-template-columns:1fr}}.athlete-media-card{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);min-width:0;color:var(--narilo-dark-text);border-radius:16px;overflow:hidden}.athlete-media-card:hover{background:var(--narilo-dark-surface-hover);border-color:#00c2ff59}.athlete-media-open{width:100%;color:inherit;text-align:left;cursor:zoom-in;padding:0;display:block}.athlete-app-shell .athlete-media-library .athlete-media-open>img,.athlete-app-shell .athlete-media-library .athlete-media-open>video{aspect-ratio:16/10;object-fit:contain;background:#050a18;width:100%;height:auto;display:block}.athlete-media-open>div{gap:6px;padding:13px;display:grid}.athlete-media-open>div>span{color:var(--narilo-blue);font-size:11px}.athlete-media-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 12px 12px;display:grid}.athlete-media-actions button{border:1px solid var(--narilo-dark-border);min-width:0;min-height:40px;color:var(--narilo-dark-text);white-space:nowrap;background:#16213d;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px;font-size:13px;line-height:18px;display:inline-flex}.athlete-media-actions button:hover:not(:disabled){background:#6c5ce72e;border-color:#00c2ff59}.athlete-media-actions button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athlete-media-actions button:disabled{cursor:wait;opacity:.65}.athlete-media-actions svg{flex:none;width:16px;height:16px}.athlete-download-error{color:#fecaca;background:#7f1d1d40;border:1px solid #f8717159;border-radius:10px;margin:0 0 16px;padding:11px 13px;font-size:14px}.athlete-modal-download{min-height:44px;color:var(--narilo-dark-text);background:#00c2ff1f;border:1px solid #00c2ff59;border-radius:11px;justify-content:center;align-items:center;gap:7px;margin-top:8px;padding:9px 13px;font-size:14px;display:inline-flex}.athlete-modal-download:hover:not(:disabled){background:#00c2ff33}.athlete-modal-download:disabled{cursor:wait;opacity:.65}.athlete-modal-download svg{width:17px;height:17px}@media (max-width:430px){.athlete-media-actions{gap:6px;padding:0 9px 10px}.athlete-media-actions button{gap:4px;padding:7px 4px;font-size:12px}.athlete-media-actions svg{width:14px;height:14px}}.athlete-app-shell .athlete-appbar{padding-left:max(32px,50vw - 640px);padding-right:max(32px,50vw - 640px)}.athlete-app-shell .athlete-page{width:min(1280px,100% - 64px)}.athlete-app-shell .athlete-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.athlete-app-shell .athlete-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px}.athlete-app-shell .athlete-compact-list{grid-template-columns:1fr}.athlete-app-shell .athlete-dashboard-section{height:auto}.athlete-app-shell .athlete-media-grid.compact,.athlete-app-shell .athlete-media-library{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}.athlete-app-shell .athlete-media-grid.compact img,.athlete-app-shell .athlete-media-grid.compact video{aspect-ratio:16/10;object-fit:contain;background:#050a18}.athlete-app-shell .athlete-media-grid.compact article>div{gap:3px;min-width:0;display:grid}.athlete-app-shell .athlete-media-grid.compact small{color:var(--narilo-dark-text-secondary);overflow-wrap:break-word;font-size:12px}.athlete-app-shell .athlete-training-cards,.athlete-app-shell .athlete-progress-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:1024px){.athlete-app-shell .athlete-summary-grid,.athlete-app-shell .athlete-overview-grid,.athlete-app-shell .athlete-training-cards,.athlete-app-shell .athlete-progress-grid,.athlete-app-shell .athlete-media-grid.compact,.athlete-app-shell .athlete-media-library{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.athlete-app-shell .athlete-appbar{padding-left:18px;padding-right:18px}.athlete-app-shell .athlete-page{width:calc(100% - 36px)}}@media (max-width:680px){.athlete-app-shell .athlete-overview-grid,.athlete-app-shell .athlete-training-cards,.athlete-app-shell .athlete-progress-grid,.athlete-app-shell .athlete-media-grid.compact,.athlete-app-shell .athlete-media-library{grid-template-columns:1fr}}@media (max-width:600px){.athlete-app-shell .athlete-page{width:calc(100% - 28px)}}.athlete-progress-tabs{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:13px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;width:min(420px,100%);margin:0 0 24px;padding:5px;display:grid}.athlete-progress-tabs a{min-width:0;min-height:40px;color:var(--narilo-dark-text-secondary);font:400 14px/20px var(--font-family-primary);text-align:center;border-radius:9px;justify-content:center;align-items:center;padding:8px 12px;display:flex}.athlete-progress-tabs a:hover{color:var(--narilo-dark-text);background:#6c5ce71f}.athlete-progress-tabs a:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athlete-progress-tabs a.active{color:#fff;background:#6c5ce747;box-shadow:inset 0 0 0 1px #6c5ce76b}.skill-book-month-nav{grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;width:min(720px,100%);margin:0 auto 20px;display:grid}.skill-book-month-nav button{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);min-height:42px;color:var(--narilo-dark-text);font:400 14px/20px var(--font-family-primary);border-radius:11px;justify-content:center;align-items:center;gap:6px;padding:8px 12px;display:inline-flex}.skill-book-month-nav button:last-child{justify-self:end}.skill-book-month-nav button:disabled{cursor:not-allowed;opacity:.4}.skill-book-month-nav button:not(:disabled):hover{background:var(--narilo-dark-surface-hover);border-color:#00c2ff59}.skill-book-month-nav button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.skill-book-month-nav svg{width:17px;height:17px}.skill-book-month-nav>strong{text-align:center;text-transform:capitalize}.skill-book-card{aspect-ratio:9/16;width:min(420px,100%);color:var(--narilo-dark-text);background:radial-gradient(circle at 50% 5%,#6c5ce73d,#0000 31%),linear-gradient(#111a32 0%,#0b132b 56%,#070d1f 100%);border:1px solid #ffffff1c;border-radius:24px;flex-direction:column;margin:0 auto;padding:28px 30px 30px;display:flex;overflow:hidden;box-shadow:0 24px 70px #00000052}.skill-book-card>header{text-align:center;flex-direction:column;align-items:center;display:flex}.skill-book-card>header img{object-fit:contain;width:132px;height:auto}.skill-book-card>header p{color:var(--narilo-blue);letter-spacing:.22em;margin:12px 0 0;font-size:12px}.skill-book-stars{color:#d8ad4a;justify-content:center;align-items:center;gap:11px;margin:10px 0 12px;display:flex}.skill-book-stars svg{fill:#0000;stroke-width:1.5px;width:34px;height:34px}.skill-book-stars svg:nth-child(2){width:46px;height:46px}.skill-book-card h2{text-wrap:balance;max-width:330px;margin:0;font-size:25px;line-height:32px}.skill-book-card>header>strong{color:var(--narilo-teal);margin-top:6px;font-size:18px;line-height:25px}.skill-book-mastered{text-align:center;margin-top:25px}.skill-book-mastered h3{color:#f4d27a;margin:0 0 15px;font-size:27px;line-height:34px}.skill-book-mastered ul{gap:9px;margin:0;padding:0;list-style:none;display:grid}.skill-book-mastered ul.two-columns{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}.skill-book-mastered li{color:#f8fafc;overflow-wrap:break-word;min-width:0;font-size:18px;line-height:24px}.skill-book-mastered>p{color:var(--narilo-dark-text-secondary);margin:0;font-size:15px;line-height:23px}.skill-book-card>footer{text-align:center;justify-items:center;margin-top:auto;padding-top:22px;display:grid}.skill-book-card>footer span{color:var(--narilo-blue);letter-spacing:.18em;font-size:11px}.skill-book-card>footer strong{margin-top:4px;font-size:17px;line-height:24px}.skill-book-card>footer small{color:var(--narilo-dark-text-secondary);margin-top:5px;font-size:11px;line-height:16px}@media (max-width:600px){.athlete-appbar nav a{flex:1;min-width:0;padding-left:3px;padding-right:3px}.skill-book-month-nav{grid-template-columns:1fr 1fr;gap:8px}.skill-book-month-nav>strong{grid-area:1/1/auto/-1}.skill-book-month-nav button{grid-row:2;padding:7px 8px;font-size:12px}.skill-book-month-nav button:last-child{justify-self:stretch}.skill-book-card{border-radius:20px;padding:23px 22px 25px}.skill-book-card h2{font-size:22px;line-height:29px}.skill-book-mastered{margin-top:20px}.skill-book-mastered h3{font-size:24px;line-height:31px}.skill-book-mastered li{font-size:16px;line-height:22px}}@media (max-width:350px){.skill-book-month-nav button{gap:3px;font-size:11px}.skill-book-card{padding-left:18px;padding-right:18px}.skill-book-mastered ul.two-columns{column-gap:10px}.skill-book-mastered li{font-size:15px}}.skill-book-actions{justify-items:center;gap:9px;margin:0 auto 18px;display:grid}.skill-book-actions button{background:var(--narilo-purple);color:#fff;min-height:44px;font:500 15px/20px var(--font-family-primary);border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;display:inline-flex;box-shadow:0 8px 24px #6c5ce738}.skill-book-actions button:hover:not(:disabled){background:#7869eb}.skill-book-actions button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:3px}.skill-book-actions button:disabled{cursor:wait;opacity:.65}.skill-book-actions svg{width:18px;height:18px}.skill-book-actions p{margin:0;font-size:13px;line-height:19px}.skill-book-actions p.success{color:var(--narilo-teal)}.skill-book-actions p.error{color:#fecaca}.skill-book-data-note{color:var(--narilo-dark-text-secondary);text-align:center;margin:14px auto 0;font-size:12px}.skill-book-export-host{z-index:-100;pointer-events:none;width:1080px;height:1920px;position:fixed;top:0;left:-20000px}.skill-book-card.skill-book-export-card{aspect-ratio:auto;border-radius:0;width:1080px;height:1920px;padding:72px 78px 76px}.skill-book-export-card>header img{width:340px}.skill-book-export-card>header p{letter-spacing:.22em;margin-top:31px;font-size:31px}.skill-book-export-card .skill-book-stars svg{width:87px;height:87px}.skill-book-export-card .skill-book-stars svg:nth-child(2){width:118px;height:118px}.skill-book-export-card .skill-book-mastered h3{margin-bottom:38px;font-size:69px;line-height:87px}.skill-book-export-card .skill-book-mastered ul.two-columns{column-gap:46px}.skill-book-export-card>footer{padding-top:56px}.skill-book-export-card>footer span{letter-spacing:.18em;font-size:28px}.skill-book-export-card>footer strong{margin-top:10px;font-size:44px;line-height:62px}@media (max-width:600px){.skill-book-actions button,.skill-book-actions{width:100%}}.athlete-app-shell .athlete-page:has(.skill-book-page){width:min(1760px,100% - 64px)}.skill-book-preview-grid{grid-template-columns:repeat(4,minmax(0,420px));justify-content:center;align-items:start;gap:16px;display:grid}.skill-book-preview-grid .skill-book-card{aspect-ratio:auto;width:100%;max-width:420px;height:auto;min-height:430px;padding:22px 24px 20px}.skill-book-card>header{text-align:left;align-items:stretch}.skill-book-brand{justify-items:start;display:grid}.skill-book-card .skill-book-brand img{width:98px}.skill-book-card .skill-book-brand p{color:var(--narilo-blue);letter-spacing:.2em;margin:5px 0 0;font-size:9px}.skill-book-card .skill-book-stars{align-self:center;gap:8px;margin:4px 0 5px;transform:translateY(0)}.skill-book-card .skill-book-stars svg{width:23px;height:23px;transform:translateY(4px)}.skill-book-card .skill-book-stars svg:nth-child(2){width:32px;height:32px;transform:translateY(0)}.skill-book-card h2{text-align:center;align-self:center;max-width:100%;font-size:18px;line-height:24px}.skill-book-card>header>strong{align-self:center;margin-top:2px;font-size:14px;line-height:20px}.skill-book-mastered{justify-content:center;align-items:flex-start;min-height:0;margin-top:12px;display:flex}.skill-book-mastered ul{gap:2px;width:100%}.skill-book-mastered ul.two-columns{grid-template-rows:repeat(5,auto);grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;column-gap:13px}.skill-book-mastered li{text-align:center;font-size:17px;line-height:21px}.skill-book-mastered>p{text-align:center;font-size:15px;line-height:21px}.skill-book-card>footer{text-align:left;border-top:1px solid #ffffff1a;justify-items:stretch;width:100%;margin-top:auto;padding-top:12px}.skill-book-coach{white-space:nowrap;align-items:baseline;gap:7px;min-width:0;display:flex}.skill-book-card>footer .skill-book-coach span{letter-spacing:.1em;font-size:12px;line-height:18px}.skill-book-card>footer .skill-book-coach strong{text-overflow:ellipsis;min-width:0;margin:0;font-size:16px;font-weight:400;line-height:21px;overflow:hidden}.skill-book-club-slot{height:14px}.skill-book-card.skill-book-export-card{padding:72px 78px 76px}.skill-book-export-card .skill-book-brand img{width:288px}.skill-book-export-card .skill-book-brand p{margin-top:18px;font-size:26px}.skill-book-export-card .skill-book-stars{gap:28px;margin:21px 0 23px}.skill-book-export-card .skill-book-stars svg{width:72px;height:72px;transform:translateY(13px)}.skill-book-export-card .skill-book-stars svg:nth-child(2){width:98px;height:98px;transform:translateY(0)}.skill-book-export-card h2{max-width:900px;font-size:54px;line-height:72px}.skill-book-export-card>header>strong{margin-top:10px;font-size:41px;line-height:56px}.skill-book-export-card .skill-book-mastered{margin-top:46px}.skill-book-export-card .skill-book-mastered ul{gap:7px}.skill-book-export-card .skill-book-mastered ul.two-columns{grid-template-rows:repeat(5,auto);column-gap:40px}.skill-book-export-card .skill-book-mastered li{font-size:46px;line-height:55px}.skill-book-export-card .skill-book-mastered>p{font-size:40px;line-height:52px}.skill-book-export-card>footer{border-top-width:2px;padding-top:42px}.skill-book-export-card>footer .skill-book-coach{gap:13px}.skill-book-export-card>footer .skill-book-coach span{font-size:31px;line-height:46px}.skill-book-export-card>footer .skill-book-coach strong{font-size:41px;line-height:54px}.skill-book-export-card .skill-book-club-slot{height:46px}@media (max-width:1699px){.skill-book-preview-grid{grid-template-columns:repeat(3,minmax(0,420px))}}@media (max-width:1099px){.skill-book-preview-grid{grid-template-columns:repeat(2,minmax(0,420px))}}@media (max-width:680px){.athlete-app-shell .athlete-page:has(.skill-book-page){width:calc(100% - 28px)}.skill-book-preview-grid{grid-template-columns:minmax(0,420px)}.skill-book-preview-grid .skill-book-card{min-height:410px;padding:20px}.skill-book-mastered ul.two-columns{column-gap:10px}}.skill-book-year-nav{grid-template-columns:44px minmax(90px,auto) 44px;justify-content:center;align-items:center;gap:8px;margin:0 auto 22px;display:grid}.skill-book-year-nav button{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);width:44px;height:42px;color:var(--narilo-dark-text);border-radius:11px;justify-content:center;align-items:center;display:inline-flex}.skill-book-year-nav button:hover:not(:disabled){background:var(--narilo-dark-surface-hover);border-color:#00c2ff59}.skill-book-year-nav button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.skill-book-year-nav button:disabled{cursor:not-allowed;opacity:.35}.skill-book-year-nav svg{width:18px;height:18px}.skill-book-year-nav strong{text-align:center;font-size:20px}.skill-book-page-message{text-align:center;margin:-8px auto 16px;font-size:13px}.skill-book-page-message.success{color:var(--narilo-teal)}.skill-book-page-message.error{color:#fecaca}.skill-book-preview-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;max-width:1728px;margin:0 auto}.skill-book-month-card{gap:10px;min-width:0;display:grid;position:relative}.skill-book-preview-grid .skill-book-card{max-width:none;margin:0}.skill-book-card-actions{justify-content:center;display:flex;position:relative}.skill-book-card-actions>button{min-height:40px;color:var(--narilo-dark-text);font:500 14px/20px var(--font-family-primary);background:#6c5ce72b;border:1px solid #6c5ce773;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:8px 15px;display:inline-flex}.skill-book-card-actions>button:hover:not(:disabled){background:#6c5ce747}:is(.skill-book-card-actions>button:focus-visible,.skill-book-format-chooser button:focus-visible){outline:2px solid var(--narilo-blue);outline-offset:2px}.skill-book-card-actions>button:disabled{cursor:wait;opacity:.6}.skill-book-card-actions svg{width:17px;height:17px}.skill-book-format-chooser{z-index:12;border:1px solid var(--narilo-dark-border);background:#16213d;border-radius:13px;width:min(240px,100vw - 32px);padding:6px;display:grid;position:absolute;bottom:48px;right:50%;transform:translate(50%);box-shadow:0 16px 35px #00000061}.skill-book-format-chooser button{color:var(--narilo-dark-text);font:400 14px/20px var(--font-family-primary);text-align:left;border-radius:9px;gap:1px;padding:9px 10px;display:grid}.skill-book-format-chooser button:hover{background:#6c5ce738}.skill-book-format-chooser small{color:var(--narilo-dark-text-secondary);font-size:11px;line-height:16px}.skill-book-export-host{width:0;height:0;overflow:visible}.skill-book-card.skill-book-export-card{border-radius:0;margin:0;position:absolute;top:0;left:0}.skill-book-card.skill-book-export-story{width:1080px;height:1920px}.skill-book-card.skill-book-export-feed{width:1080px;height:1350px;padding:54px 68px 58px}.skill-book-export-feed .skill-book-brand img{width:235px}.skill-book-export-feed .skill-book-brand p{margin-top:12px;font-size:21px}.skill-book-export-feed .skill-book-stars{gap:20px;margin:12px 0 14px}.skill-book-export-feed .skill-book-stars svg{width:55px;height:55px;transform:translateY(10px)}.skill-book-export-feed .skill-book-stars svg:nth-child(2){width:76px;height:76px;transform:none}.skill-book-export-feed h2{max-width:880px;font-size:44px;line-height:57px}.skill-book-export-feed>header>strong{margin-top:7px;font-size:31px;line-height:43px}.skill-book-export-feed .skill-book-mastered{margin-top:28px}.skill-book-export-feed .skill-book-mastered ul{gap:4px}.skill-book-export-feed .skill-book-mastered ul.two-columns{grid-template-rows:repeat(5,auto);column-gap:34px}.skill-book-export-feed .skill-book-mastered li{font-size:35px;line-height:42px}.skill-book-export-feed .skill-book-mastered>p{font-size:31px;line-height:42px}.skill-book-export-feed>footer{border-top-width:2px;padding-top:28px}.skill-book-export-feed>footer .skill-book-coach{gap:10px}.skill-book-export-feed>footer .skill-book-coach span{font-size:24px;line-height:36px}.skill-book-export-feed>footer .skill-book-coach strong{font-size:33px;line-height:42px}.skill-book-export-feed .skill-book-club-slot{height:32px}@media (max-width:1399px){.skill-book-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1024px){.skill-book-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.skill-book-preview-grid{grid-template-columns:minmax(0,420px)}.skill-book-card-actions>button{width:100%}}.athlete-compare-stage{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.athlete-compare-guide{min-height:260px;color:var(--narilo-dark-text);text-align:center;background:#111a32b8;border:1px dashed #6c5ce76b;border-radius:18px;grid-column:1/-1;align-content:center;place-items:center;gap:8px;padding:28px;display:grid}.athlete-compare-guide svg{width:34px;height:34px;color:var(--narilo-purple)}.athlete-compare-guide p{max-width:580px;color:var(--narilo-dark-text-secondary);margin:0;font-size:14px;line-height:21px}.athlete-compare-panel{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:18px;min-width:0;overflow:hidden;box-shadow:0 16px 35px #00000029}.athlete-compare-panel>header{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.athlete-compare-panel>header>strong{color:var(--narilo-blue);font-size:18px}.athlete-compare-panel time,.athlete-compare-pick-copy time{color:var(--narilo-dark-text-secondary);align-items:center;gap:6px;font-size:13px;display:inline-flex}.athlete-compare-panel time svg,.athlete-compare-pick-copy time svg{width:15px;height:15px}.athlete-compare-media{aspect-ratio:16/10;background:#050a18;place-items:center;width:100%;display:grid;overflow:hidden}.athlete-compare-media img,.athlete-compare-media video{object-fit:contain;width:100%;height:100%;display:block}.athlete-compare-media-error{color:#fecaca;text-align:center;justify-items:center;gap:8px;max-width:360px;padding:20px;font-size:13px;line-height:20px;display:grid}.athlete-compare-media-error svg{width:28px;height:28px}.athlete-compare-panel>footer{justify-content:space-between;align-items:center;gap:12px;min-height:76px;padding:13px 16px;display:flex}.athlete-compare-panel>footer>div{min-width:0}.athlete-compare-panel>footer span{color:var(--narilo-dark-text-secondary);font-size:12px}.athlete-compare-panel h2{color:var(--narilo-dark-text);overflow-wrap:break-word;margin:3px 0 0;font-size:16px;line-height:22px}.athlete-compare-toolbar{justify-content:space-between;align-items:end;gap:14px;margin-bottom:14px;display:flex}.athlete-compare-toolbar .athlete-filter-row{margin:0}.athlete-compare-clear{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);min-height:42px;color:var(--narilo-dark-text);border-radius:11px;flex:none;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:13px;display:inline-flex}.athlete-compare-clear:hover{background:var(--narilo-dark-surface-hover)}.athlete-compare-clear:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athlete-compare-picker>button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athlete-compare-clear svg{width:16px;height:16px}.athlete-compare-picker{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.athlete-compare-picker>button{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);min-width:0;color:var(--narilo-dark-text);text-align:left;border-radius:15px;transition:border-color .18s,transform .18s,background .18s;position:relative;overflow:hidden}.athlete-compare-picker>button:hover{background:var(--narilo-dark-surface-hover);border-color:#00c2ff59;transform:translateY(-1px)}.athlete-compare-picker>button.selected{border-color:var(--narilo-teal);box-shadow:0 0 0 2px #22d3a624}.athlete-compare-picker>button.recommended:not(.selected){border-color:#6c5ce799}.athlete-compare-picker img,.athlete-compare-picker video{aspect-ratio:16/10;object-fit:contain;background:#050a18;width:100%;display:block}.athlete-compare-pick-copy{gap:3px;padding:11px 12px;display:grid}.athlete-compare-pick-copy strong{overflow-wrap:break-word;font-size:14px;line-height:20px}.athlete-compare-pick-copy small{color:var(--narilo-dark-text-secondary);overflow-wrap:break-word;font-size:12px;line-height:17px}.athlete-compare-selected,.athlete-compare-recommended{border-radius:999px;padding:4px 7px;font-size:10px;line-height:14px;position:absolute;top:8px}.athlete-compare-selected{color:#dcfce7;background:#14532d;align-items:center;gap:3px;display:inline-flex;right:8px}.athlete-compare-selected svg{width:12px;height:12px}.athlete-compare-recommended{color:#ede9fe;background:#4c1d95e6;left:8px}@media (max-width:1399px){.athlete-compare-picker{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:1099px){.athlete-compare-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:800px){.athlete-compare-toolbar{flex-direction:column;align-items:stretch}.athlete-compare-toolbar .athlete-filter-row{width:100%}.athlete-compare-clear{align-self:flex-end}.athlete-compare-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.athlete-compare-stage{grid-template-columns:1fr}.athlete-compare-guide{min-height:210px}.athlete-compare-panel>header,.athlete-compare-panel>footer{padding-left:13px;padding-right:13px}.athlete-compare-panel>footer{flex-direction:column;align-items:flex-start}.athlete-compare-toolbar .athlete-filter-row{grid-template-columns:1fr;display:grid}.athlete-compare-toolbar .athlete-filter{width:100%;min-width:0}.athlete-compare-clear{width:100%}.athlete-compare-picker{grid-template-columns:1fr}}.athlete-media-view-tabs{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:13px;gap:4px;margin:0 0 20px;padding:4px;display:inline-flex}.athlete-media-view-tabs a{color:var(--narilo-dark-text-secondary);border-radius:9px;padding:8px 14px;font-size:14px;line-height:20px}.athlete-media-view-tabs a:hover{color:var(--narilo-dark-text);background:#6c5ce71f}.athlete-media-view-tabs a.active{color:var(--narilo-dark-text);background:#6c5ce73d}.athlete-media-view-tabs a:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athlete-compare-view{min-width:0}.athlete-compare-view .athlete-compare-stage{width:min(880px,100%);margin-left:auto;margin-right:auto}.athlete-compare-view .athlete-compare-media{aspect-ratio:16/10}.athlete-compare-view .athlete-compare-media img{object-fit:contain}.athlete-compare-notice{color:var(--narilo-dark-text-secondary);background:#00c2ff14;border:1px solid #00c2ff38;border-radius:11px;margin:0 0 14px;padding:11px 13px;font-size:13px}.athlete-compare-actions{justify-content:center;gap:10px;margin:-4px 0 20px;display:flex}.athlete-compare-actions button{min-height:42px;color:var(--narilo-dark-text);font:500 14px/20px var(--font-family-primary);background:#6c5ce733;border:1px solid #6c5ce76b;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:9px 15px;display:inline-flex}.athlete-compare-actions button:hover:not(:disabled){background:#6c5ce74d}.athlete-compare-actions button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athlete-compare-actions button:disabled{cursor:not-allowed;opacity:.42}.athlete-compare-actions svg{width:17px;height:17px}.athlete-compare-message{text-align:center;margin:-8px 0 16px;font-size:13px}.athlete-compare-message.success{color:var(--narilo-teal)}.athlete-compare-message.error{color:#fecaca}.athlete-compare-export-host{pointer-events:none;width:0;height:0;position:absolute;top:0;left:0;overflow:visible}.athlete-compare-export{color:#f8fafc;width:1080px;font-family:var(--font-family-primary);background:#070d1f;grid-template-rows:auto 1fr;padding:70px;display:grid;position:absolute;top:0;left:0;overflow:hidden}.athlete-compare-export-feed{height:1350px}.athlete-compare-export-story{height:1920px;padding-top:110px;padding-bottom:110px}.athlete-compare-export>header{text-align:center}.athlete-compare-export>header img{object-fit:contain;width:250px;height:auto;margin:0 auto 34px;display:block}.athlete-compare-export h2{margin:0;font-size:58px;line-height:1.15}.athlete-compare-export>header p{color:#a8b2c7;overflow-wrap:break-word;max-width:880px;margin:18px auto 0;font-size:27px;line-height:1.4}.athlete-compare-export-images{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:30px;margin-top:48px;display:grid}.athlete-compare-export-images article{gap:18px;min-width:0;display:grid}.athlete-compare-export-images strong{color:#00c2ff;text-align:center;font-size:34px}.athlete-compare-export-images img{aspect-ratio:4/5;object-fit:cover;background:#111a32;border:2px solid #ffffff1f;border-radius:25px;width:100%;display:block}.athlete-compare-export-images time{color:#f8fafc;text-align:center;font-size:25px}.athlete-compare-export-story .athlete-compare-export-images{margin-top:88px}.athlete-compare-export-story .athlete-compare-export-images img{aspect-ratio:3/4}.athlete-compare-export-story>header p{font-size:29px}@media (max-width:600px){.athlete-media-view-tabs{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.athlete-media-view-tabs a{text-align:center}.athlete-compare-actions{grid-template-columns:1fr;width:100%;display:grid}.athlete-compare-actions button{width:100%}.athlete-compare-view .athlete-compare-stage{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.athlete-compare-view .athlete-compare-panel>header{justify-items:center;gap:4px;padding:10px 6px;display:grid}.athlete-compare-view .athlete-compare-panel>header>strong{font-size:15px}.athlete-compare-view .athlete-compare-panel time{font-size:10px}.athlete-compare-view .athlete-compare-media{aspect-ratio:3/4}}@media (max-width:374px){.athlete-compare-view .athlete-compare-stage{grid-template-columns:1fr}}.athlete-submissions{gap:24px;display:grid}.athlete-submission-upload{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:20px;gap:16px;padding:24px;display:grid}.athlete-submission-upload>div:first-child p,.athlete-submission-list-head p{color:var(--narilo-blue);letter-spacing:.12em;margin:0 0 5px;font-size:11px}.athlete-submission-upload h2,.athlete-submission-list-head h2{margin:0;font-size:22px;line-height:29px}.athlete-submission-upload>div:first-child>span{color:var(--narilo-dark-text-secondary);margin-top:6px;font-size:13px;line-height:20px;display:block}.athlete-submission-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.athlete-submission-fields label{gap:6px;display:grid}.athlete-submission-fields label>span{color:var(--narilo-dark-text-secondary);font-size:12px}.athlete-submission-fields select{border:1px solid var(--narilo-dark-border);width:100%;min-height:43px;color:var(--narilo-dark-text);font:inherit;background:#111a32;border-radius:11px;padding:9px 34px 9px 11px}.athlete-submission-fields select:disabled{cursor:not-allowed;opacity:.55}.athlete-submission-fields select:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athlete-file-picker:has(input:focus-visible){outline:2px solid var(--narilo-blue);outline-offset:2px}.athlete-submissions button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.athlete-file-picker{cursor:pointer;background:#00c2ff0f;border:1px dashed #00c2ff66;border-radius:15px;align-items:center;gap:14px;min-height:82px;padding:16px;display:flex}.athlete-file-picker:hover{background:#00c2ff1a}.athlete-file-picker.disabled{cursor:wait;opacity:.6}.athlete-file-picker>svg{width:28px;height:28px;color:var(--narilo-blue)}.athlete-file-picker>span{gap:2px;display:grid}.athlete-file-picker small{color:var(--narilo-dark-text-secondary)}.athlete-file-picker input{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.athlete-submission-progress,.athlete-submission-success{color:var(--narilo-dark-text-secondary);align-items:center;gap:8px;font-size:13px;display:flex}.athlete-submission-progress svg,.athlete-submission-success svg{width:18px}.athlete-submission-success{color:#a7f3d0}.athlete-submission-preview{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);border-radius:16px;grid-template-columns:minmax(180px,320px) minmax(0,1fr);gap:18px;display:grid;overflow:hidden}.athlete-submission-preview>img{object-fit:contain;background:#050a18;width:100%;height:220px;display:block}.athlete-submission-preview>div{align-content:center;gap:7px;padding:18px 18px 18px 0;display:grid}.athlete-submission-preview span,.athlete-submission-preview small{color:var(--narilo-dark-text-secondary);font-size:13px;line-height:19px}.athlete-submission-preview>div>div{flex-wrap:wrap;gap:8px;margin-top:5px;display:flex}.athlete-submission-preview button,.athlete-submission-error button,.athlete-load-more button,.athlete-state button{min-height:42px;color:var(--narilo-dark-text);font:500 13px/20px var(--font-family-primary);background:#00c2ff24;border:1px solid #00c2ff59;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:9px 14px;display:inline-flex}.athlete-submission-preview button.secondary{border-color:var(--narilo-dark-border);background:0 0}.athlete-submission-preview button:disabled,.athlete-submission-error button:disabled,.athlete-load-more button:disabled{cursor:not-allowed;opacity:.55}.athlete-submission-preview button svg,.athlete-submission-error button svg,.athlete-load-more button svg,.athlete-state button svg{width:17px}.athlete-submission-error,.athlete-submission-notice{color:#fecaca;background:#7f1d1d29;border:1px solid #f8717147;border-radius:11px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;font-size:13px;line-height:20px;display:flex}.athlete-submission-notice{color:var(--narilo-dark-text-secondary);background:#00c2ff14;border-color:#00c2ff38}.athlete-submission-list-head{justify-content:space-between;align-items:end;gap:16px;display:flex}.athlete-submission-list-head>span{color:var(--narilo-dark-text-secondary);font-size:13px}.athlete-pending-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.athlete-pending-grid>article{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:16px;min-width:0;overflow:hidden}.athlete-pending-open{width:100%;min-height:220px;color:var(--narilo-dark-text);text-align:left;align-content:start;gap:5px;padding:0;display:grid}.athlete-pending-open>div{min-height:118px;color:var(--narilo-blue);background:linear-gradient(145deg,#0b1732,#161b38);align-content:center;place-items:center;gap:7px;display:grid}.athlete-pending-open>div svg{width:28px}.athlete-pending-open>div span{font-size:12px}.athlete-pending-open>strong,.athlete-pending-open>small,.athlete-pending-open>time,.athlete-pending-open>span{overflow-wrap:anywhere;margin-left:14px;margin-right:14px}.athlete-pending-open>strong{margin-top:9px}.athlete-pending-open>small,.athlete-pending-open>time,.athlete-pending-open>span{color:var(--narilo-dark-text-secondary);font-size:12px}.athlete-pending-open>span{margin-bottom:12px}.athlete-pending-actions{border-top:1px solid var(--narilo-dark-border);background:var(--narilo-dark-border);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.athlete-pending-actions button{background:var(--narilo-dark-surface);min-width:0;min-height:44px;color:var(--narilo-dark-text-secondary);font:500 11px/17px var(--font-family-primary);justify-content:center;align-items:center;gap:5px;padding:7px 5px;display:inline-flex}.athlete-pending-actions button:hover:not(:disabled){background:var(--narilo-dark-surface-hover);color:var(--narilo-dark-text)}.athlete-pending-actions button:disabled{cursor:wait;opacity:.55}.athlete-pending-actions button.danger,.athlete-modal-delete{color:#fecaca}.athlete-pending-actions svg{flex:none;width:15px}.athlete-load-more{justify-items:center;gap:10px;display:grid}.athlete-load-more>div{color:#fecaca;font-size:13px}.athlete-pending-modal>img{min-height:300px}.athlete-pending-image-error{color:#fecaca;background:#050916;align-content:center;place-items:center;gap:10px;min-height:360px;display:grid}.athlete-pending-image-error svg{width:34px}.athlete-pending-image-error button,.athlete-modal-delete{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);min-height:42px;color:var(--narilo-dark-text);border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:9px 14px;display:inline-flex}.athlete-pending-image-error button svg,.athlete-modal-delete svg{width:17px}.athlete-modal-delete{color:#fecaca;border-color:#f871714d}.athlete-confirm-dialog{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);text-align:center;border-radius:18px;justify-items:center;gap:13px;width:min(430px,100%);padding:27px;display:grid;box-shadow:0 30px 90px #00000073}.athlete-confirm-dialog>svg{color:#fca5a5;width:34px;height:34px}.athlete-confirm-dialog h2,.athlete-confirm-dialog p{margin:0}.athlete-confirm-dialog p{color:var(--narilo-dark-text-secondary);font-size:14px;line-height:21px}.athlete-confirm-dialog>div{grid-template-columns:repeat(2,minmax(110px,1fr));gap:9px;width:100%;margin-top:5px;display:grid}.athlete-confirm-dialog button{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);min-height:44px;color:var(--narilo-dark-text);border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:9px 14px;display:inline-flex}.athlete-confirm-dialog button.danger{color:#fecaca;background:#7f1d1d3d;border-color:#f8717159}.athlete-confirm-dialog button:disabled{cursor:wait;opacity:.6}.athlete-confirm-dialog button svg{width:17px}.spin{animation:.8s linear infinite narilo-spin}@keyframes narilo-spin{to{transform:rotate(360deg)}}@media (max-width:900px){.athlete-pending-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.athlete-media-view-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.athlete-media-view-tabs a{padding-left:7px;padding-right:7px;font-size:12px}.athlete-submission-upload{padding:17px}.athlete-submission-fields,.athlete-submission-preview{grid-template-columns:1fr}.athlete-submission-preview>img{height:auto;max-height:300px}.athlete-submission-preview>div{padding:0 15px 15px}.athlete-submission-preview>div>div{display:grid}.athlete-submission-preview button{width:100%}.athlete-pending-grid{grid-template-columns:1fr}.athlete-pending-actions button{min-height:48px}.athlete-submission-list-head{align-items:start}.athlete-confirm-dialog{padding:22px 17px}.athlete-pending-modal>img{min-height:220px}}.athlete-compare-shared{color:var(--narilo-dark-text-secondary);text-align:center;flex-wrap:wrap;grid-column:1/-1;justify-content:center;align-items:center;gap:7px 12px;font-size:13px;display:flex}.athlete-compare-shared strong{color:var(--narilo-dark-text);font-weight:500}.athlete-compare-export-images article>p{color:#a8b2c7;text-align:center;overflow-wrap:break-word;margin:0;font-size:21px;line-height:1.45}.athlete-compare-results-grid{grid-template-columns:repeat(4,minmax(0,290px));justify-content:center;gap:16px;margin:0 0 20px;display:grid}.athlete-compare-results-grid>.athlete-compare-guide{grid-column:1/-1;justify-self:center;width:min(580px,100%);min-height:220px}.athlete-compare-card{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:17px;gap:12px;min-width:0;padding:16px;display:grid;box-shadow:0 14px 32px #00000026}.athlete-compare-card h2{color:var(--narilo-dark-text);text-align:center;margin:0;font-size:18px;line-height:24px}.athlete-compare-card-images{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.athlete-compare-card figure{text-align:center;gap:6px;min-width:0;margin:0;display:grid}.athlete-compare-card figure>strong{color:var(--narilo-blue);font-size:13px;line-height:18px}.athlete-compare-card figure>div{aspect-ratio:4/5;background:#050a18;border-radius:11px;place-items:center;display:grid;overflow:hidden}.athlete-compare-card figure img{object-fit:contain;width:100%;height:100%;display:block}.athlete-compare-card figure time{color:var(--narilo-dark-text-secondary);font-size:11px;line-height:16px}.athlete-compare-card figure .athlete-compare-media-error{gap:5px;padding:8px;font-size:10px;line-height:14px;display:grid}.athlete-compare-card figure .athlete-compare-media-error svg{width:20px;height:20px}.athlete-compare-card-skill,.athlete-compare-card-sport{overflow-wrap:break-word;text-align:center;min-width:0}.athlete-compare-card-skill{color:var(--narilo-dark-text);font-size:14px;line-height:20px}.athlete-compare-card-sport{color:var(--narilo-dark-text-secondary);font-size:12px;line-height:18px}.athlete-compare-card .athlete-compare-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:2px 0 0;display:grid}.athlete-compare-card .athlete-compare-actions button{min-width:0;min-height:38px;padding:7px 6px;font-size:12px;line-height:17px}.athlete-compare-card .athlete-compare-actions svg{flex:none;width:15px;height:15px}.athlete-compare-export-host{z-index:-1;pointer-events:none;width:1px;height:1px;position:fixed;top:0;left:-100000px;overflow:visible}.athlete-compare-export{position:absolute;top:0;left:0}.athlete-compare-export>header>strong{color:#f8fafc;text-align:center;overflow-wrap:break-word;max-width:880px;margin:20px auto 0;font-size:31px;line-height:1.35;display:block}.athlete-compare-export>header p{text-align:center;margin-top:10px}@media (max-width:1499px){.athlete-compare-results-grid{grid-template-columns:repeat(3,minmax(0,290px))}}@media (max-width:1099px){.athlete-compare-results-grid{grid-template-columns:repeat(2,minmax(0,290px))}}@media (max-width:680px){.athlete-compare-results-grid{grid-template-columns:minmax(0,1fr)}.athlete-compare-card{justify-self:center;width:100%;max-width:430px}}@media (max-width:390px){.athlete-compare-card .athlete-compare-actions{grid-template-columns:1fr}}.athlete-compare-export{box-sizing:border-box;flex-direction:column;display:flex}.athlete-compare-export>header{flex:none}.athlete-compare-export>header img{width:190px;margin:0 auto 14px}.athlete-compare-export h2{font-size:46px;line-height:1.12}.athlete-compare-export>header>strong{margin-top:12px;font-size:32px;line-height:1.28}.athlete-compare-export>header p{margin-top:5px;font-size:24px;line-height:1.35}.athlete-compare-export-images{align-items:start;margin-top:26px}.athlete-compare-export-images article{gap:12px}.athlete-compare-export-images strong{font-size:31px;line-height:1.2}.athlete-compare-export-images img{aspect-ratio:auto;height:auto}.athlete-compare-export-images time{font-size:23px;line-height:1.3}.athlete-compare-export-feed{padding:48px 58px 44px}.athlete-compare-export-feed .athlete-compare-export-images{gap:24px;margin-top:24px}.athlete-compare-export-feed .athlete-compare-export-images img{height:650px}.athlete-compare-export-story{padding:94px 58px 104px}.athlete-compare-export-story>header img{width:190px;margin-bottom:16px}.athlete-compare-export-story h2{font-size:48px}.athlete-compare-export-story>header>strong{margin-top:14px;font-size:34px}.athlete-compare-export-story>header p{margin-top:6px;font-size:25px}.athlete-compare-story-composition{flex:0 0 1160px;width:100%;height:1160px;margin-top:26px;position:relative;overflow:hidden}.athlete-compare-story-image{position:absolute}.athlete-compare-story-frame{background:#111a32;border:2px solid #ffffff24;border-radius:28px;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:0 24px 54px #0000004d}.athlete-compare-story-frame img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.athlete-compare-story-frame>strong{z-index:2;color:#f8fafc;white-space:nowrap;background:#070d1fc7;border:1px solid #ffffff29;border-radius:999px;padding:9px 16px;font-size:27px;line-height:1.25;position:absolute;top:18px;left:18px;box-shadow:0 7px 20px #00000047}.athlete-compare-story-image>time{color:#f8fafc;text-align:center;white-space:nowrap;width:max-content;max-width:100%;font-size:24px;font-weight:400;line-height:1.3;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%)}.athlete-compare-story-composition--portrait-pair .athlete-compare-story-image{width:440px;height:760px}.athlete-compare-story-composition--portrait-pair .athlete-compare-story-image:first-child{top:68px;left:20px}.athlete-compare-story-composition--portrait-pair .athlete-compare-story-image:last-child{bottom:68px;right:20px}.athlete-compare-story-composition--wide-pair .athlete-compare-story-image{width:850px;height:505px}.athlete-compare-story-composition--wide-pair .athlete-compare-story-image:first-child{z-index:1;top:38px;left:18px}.athlete-compare-story-composition--wide-pair .athlete-compare-story-image:last-child{z-index:2;bottom:140px;right:18px}.athlete-compare-story-composition--mixed .athlete-compare-story-image--portrait{z-index:2;width:420px;height:760px;top:48px;left:20px}.athlete-compare-story-composition--mixed .athlete-compare-story-image--wide{z-index:1;width:650px;height:430px;bottom:72px;right:20px}.athlete-compare-export>footer{border-top:2px solid #ffffff1f;gap:8px;margin-top:auto;padding-top:24px;display:grid}.athlete-compare-export-coach{white-space:nowrap;align-items:baseline;gap:14px;display:flex}.athlete-compare-export>footer span{color:#00c2ff;letter-spacing:.14em;font-size:20px;line-height:1.3}.athlete-compare-export>footer strong{color:#f8fafc;overflow-wrap:break-word;white-space:normal;min-width:0;font-size:27px;font-weight:400;line-height:1.35}.athlete-compare-export>footer small{color:#a8b2c7;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:20px;font-weight:400;line-height:1.35;display:-webkit-box;overflow:hidden}.athlete-compare-export-story>footer{padding-top:28px}.athlete-compare-export-story>footer span,.athlete-compare-export-story>footer strong{font-size:28px}.athlete-compare-export-story>footer small{font-size:22px;font-weight:400}.logout-card>svg{width:42px;height:42px;color:var(--narilo-blue);margin-bottom:8px}.athlete-logout-label{display:none}@media (max-width:600px){.athlete-app-shell .athlete-appbar{min-height:0;padding-top:max(8px,env(safe-area-inset-top,0px));padding-right:max(14px,env(safe-area-inset-right,0px));padding-bottom:10px;padding-left:max(14px,env(safe-area-inset-left,0px));grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px}.athlete-app-shell .athlete-brand{grid-area:1/1}.athlete-app-shell .athlete-appbar>.athlete-logout{width:auto;min-width:44px;height:44px;color:var(--narilo-dark-text);grid-area:1/2;justify-content:center;justify-self:end;align-items:center;gap:7px;padding:0 11px;display:flex}.athlete-app-shell .athlete-logout-label{white-space:nowrap;font-size:12px;line-height:18px;display:inline}.athlete-app-shell .athlete-appbar nav{z-index:auto;width:100%;box-shadow:none;border-radius:13px;grid-area:2/1/auto/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;padding:4px;display:grid;position:static;inset:auto}.athlete-app-shell .athlete-appbar nav a{justify-items:center;gap:2px;min-width:0;padding:6px 2px;font-size:10px;line-height:14px;display:grid}.athlete-app-shell .athlete-summary-grid{grid-template-columns:1fr}.athlete-app-shell .athlete-page{padding-bottom:max(36px,env(safe-area-inset-bottom,0px))}}.athlete-submissions-content{grid-template-columns:1fr;align-items:start;gap:18px;display:grid}.athlete-submission-upload,.athlete-submission-pending{box-sizing:border-box;min-width:0}.athlete-submission-pending{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:20px;align-content:start;gap:16px;padding:24px;display:grid}.athlete-submission-list-head>span{white-space:nowrap}.athlete-submission-upload .athlete-submission-fields,.athlete-submission-upload .athlete-submission-preview{grid-template-columns:1fr}.athlete-submission-upload .athlete-submission-preview>img{height:auto;max-height:320px}.athlete-submission-upload .athlete-submission-preview>div{padding:0 15px 15px}.athlete-submission-pending .athlete-pending-grid{grid-template-columns:1fr}.athlete-pending-open>.athlete-pending-thumbnail{min-height:150px;color:var(--narilo-blue);background:linear-gradient(145deg,#0b1732,#161b38);display:block;position:relative;overflow:hidden}.athlete-pending-thumbnail>img{object-fit:contain;object-position:center;background:#050a18;width:100%;height:180px;display:block}.athlete-pending-thumbnail-state{align-content:center;place-items:center;gap:7px;min-height:150px;display:grid}.athlete-pending-open>.athlete-pending-thumbnail .athlete-pending-thumbnail-action{color:#fff;background:#050a18d1;border-radius:9px;align-items:center;gap:5px;padding:6px 9px;font-size:11px;display:inline-flex;position:absolute;bottom:9px;right:9px}.athlete-pending-open>.athlete-pending-thumbnail .athlete-pending-thumbnail-action svg{width:15px}.athlete-confirm-dialog{box-sizing:border-box;max-height:calc(100dvh - 24px);overflow-y:auto}.athlete-pending-modal{max-height:calc(100dvh - 24px)}@media (min-width:901px){.athlete-submissions-content{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.athlete-submission-upload,.athlete-submission-pending{align-content:start;height:100%}.athlete-submission-pending .athlete-pending-grid{overscroll-behavior:contain;grid-template-columns:1fr;grid-auto-rows:max-content;max-height:min(760px,100dvh - 160px);padding-right:4px;overflow-y:auto}.athlete-submission-pending .athlete-pending-grid>article{grid-template-columns:minmax(140px,38%) minmax(0,1fr);min-width:0;display:grid;overflow:hidden}.athlete-submission-pending .athlete-pending-open{text-align:left;grid-column:1/-1;grid-template-rows:repeat(6,auto);grid-template-columns:minmax(140px,38%) minmax(0,1fr);align-content:center;column-gap:16px;min-width:0;min-height:330px;padding:0;display:grid}.athlete-submission-pending .athlete-pending-open>.athlete-pending-thumbnail{grid-area:1/1/7;height:100%;min-height:330px}.athlete-submission-pending .athlete-pending-thumbnail>img{object-fit:contain;object-position:center;width:100%;height:100%;min-height:330px;max-height:460px}.athlete-submission-pending .athlete-pending-open>strong,.athlete-submission-pending .athlete-pending-open>small,.athlete-submission-pending .athlete-pending-open>time,.athlete-submission-pending .athlete-pending-open>.athlete-pending-file,.athlete-submission-pending .athlete-pending-open>.athlete-pending-status{overflow-wrap:anywhere;grid-column:2;min-width:0;margin-left:0;margin-right:18px}.athlete-submission-pending .athlete-pending-open>strong{margin-top:18px;font-size:20px;line-height:26px}.athlete-submission-pending .athlete-pending-open>small{margin-top:2px;font-size:14px}.athlete-submission-pending .athlete-pending-open>time,.athlete-submission-pending .athlete-pending-open>.athlete-pending-file{color:var(--narilo-dark-text);grid-template-columns:1fr;gap:2px;margin-top:10px;font-size:13px;line-height:19px;display:grid}.athlete-submission-pending .athlete-pending-open>time>span,.athlete-submission-pending .athlete-pending-open>.athlete-pending-file>span{color:var(--narilo-dark-text-secondary)}.athlete-submission-pending .athlete-pending-open>.athlete-pending-status{color:#fde68a;background:#fbbf241a;border-radius:999px;align-items:center;gap:7px;width:fit-content;margin-top:13px;margin-bottom:18px;padding:6px 9px;font-size:11px;font-weight:600;display:inline-flex}.athlete-pending-status>span{background:#fbbf24;border-radius:50%;flex:none;width:7px;height:7px}.athlete-submission-pending .athlete-pending-actions{border-left:1px solid var(--narilo-dark-border);grid-column:2;width:100%}}@media (min-width:901px) and (max-width:960px){.athlete-submission-pending .athlete-pending-actions{grid-template-columns:1fr}}@media (max-width:600px){.athlete-submissions-content{grid-template-columns:1fr;gap:18px}.athlete-submission-pending{padding:17px}.athlete-submission-list-head h2{overflow-wrap:anywhere;scroll-margin-top:136px}.athlete-submission-pending .athlete-pending-grid>article{grid-template-columns:minmax(108px,38%) minmax(0,1fr);display:grid}.athlete-submission-pending .athlete-pending-open{grid-column:1/-1;grid-template-columns:minmax(108px,38%) minmax(0,1fr);min-height:180px}.athlete-submission-pending .athlete-pending-open>.athlete-pending-thumbnail{grid-area:1/1/5;height:100%;min-height:180px}.athlete-submission-pending .athlete-pending-thumbnail>img{object-fit:contain;object-position:center;background:#050a18;width:100%;height:100%;min-height:180px;max-height:240px}.athlete-submission-pending .athlete-pending-open>strong,.athlete-submission-pending .athlete-pending-open>small,.athlete-submission-pending .athlete-pending-open>time,.athlete-submission-pending .athlete-pending-open>span{grid-column:2;margin-left:12px;margin-right:12px}.athlete-submission-pending .athlete-pending-open>strong{margin-top:14px}.athlete-submission-pending .athlete-pending-open>span{margin-bottom:14px}.athlete-submission-pending .athlete-pending-practice,.athlete-submission-pending .athlete-pending-status,.athlete-submission-pending .athlete-pending-created>span,.athlete-submission-pending .athlete-pending-file>span{display:none}.athlete-submission-pending .athlete-pending-actions{grid-column:1/-1}.athlete-submission-pending .athlete-pending-thumbnail-action{text-align:center;max-width:calc(100% - 12px);font-size:10px}.athlete-media-modal-backdrop{padding:max(8px,env(safe-area-inset-top,0px)) max(8px,env(safe-area-inset-right,0px)) max(8px,env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px))}.athlete-confirm-dialog{width:100%;padding:22px 17px}.athlete-pending-modal{width:100%;max-height:calc(100dvh - 16px)}.coach-media-viewer{grid-template-columns:1fr;height:auto;max-height:calc(100dvh - 16px);overflow-y:auto}.coach-media-viewer>img,.coach-media-viewer>video{height:auto;max-height:48dvh}.coach-media-viewer footer{padding:16px;overflow:visible}}.app-main:has(.coach-review-page){background:var(--narilo-dark-bg);min-width:0;padding:0}.coach-review-page{background:radial-gradient(circle at 92% 0,#6c5ce71a,transparent 28%),var(--narilo-dark-bg);width:100%;min-height:100vh;color:var(--narilo-dark-text);padding:36px clamp(22px,3.5vw,56px) 48px}.coach-review-heading{justify-content:space-between;align-items:end;gap:20px;width:min(1480px,100%);margin:0 auto 25px;display:flex}.coach-review-heading p{color:var(--narilo-purple-light);letter-spacing:.14em;margin:0 0 7px;font-size:11px;font-weight:700}.coach-review-heading h1{letter-spacing:-.02em;margin:0;font-size:32px;line-height:1.2}.coach-review-heading>div>span{color:var(--narilo-dark-text-secondary);margin-top:7px;font-size:14px;display:block}.coach-review-heading>strong{border:1px solid color-mix(in srgb,var(--narilo-purple) 34%,transparent);background:color-mix(in srgb,var(--narilo-purple) 12%,var(--narilo-dark-surface));border-radius:14px;justify-items:center;min-width:84px;padding:10px 14px;font-size:24px;line-height:1;display:grid}.coach-review-heading>strong span{color:var(--narilo-dark-text-secondary);text-transform:uppercase;margin-top:5px;font-size:10px;font-weight:500}.coach-review-layout{grid-template-columns:minmax(280px,380px) minmax(480px,1fr);align-items:start;gap:18px;width:min(1480px,100%);margin:0 auto;display:grid}.coach-review-list-panel,.coach-review-detail-panel{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:20px;min-width:0;box-shadow:0 18px 44px #00000029}.coach-review-list-panel{overflow:hidden}.coach-review-list-panel>header{border-bottom:1px solid var(--narilo-dark-border);justify-content:space-between;align-items:start;gap:14px;padding:20px;display:flex}.coach-review-list-panel h2{margin:0;font-size:17px}.coach-review-list-panel header p{color:var(--narilo-dark-text-secondary);margin:5px 0 0;font-size:12px}.coach-review-list-panel>header>span{color:var(--narilo-blue);background:#00c2ff1a;border-radius:999px;flex:none;padding:5px 9px;font-size:11px}.coach-review-list{align-content:start;gap:8px;margin:0;padding:12px;list-style:none;display:grid}.coach-review-list li{min-width:0}.coach-review-list li>button{background:var(--narilo-dark-surface-hover);width:100%;min-width:0;color:var(--narilo-dark-text);text-align:left;border:1px solid #0000;border-radius:14px;grid-template-columns:72px minmax(0,1fr);gap:11px;padding:13px;transition:border-color .16s,background-color .16s;display:grid}.coach-review-list li>button:hover{background:#19233f;border-color:#6c5ce757}.coach-review-list li>button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.coach-review-list li>button.selected{box-shadow:inset 3px 0 0 var(--narilo-teal);background:linear-gradient(120deg,#6c5ce72b,#00c2ff14);border-color:#00c2ff7a}.coach-review-list-thumbnail{color:#c9c2ff;background:#050a18;border-radius:11px;place-items:center;width:72px;height:88px;display:grid;overflow:hidden}.coach-review-list-thumbnail>img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.coach-review-list-thumbnail>span{place-items:center;display:grid}.coach-review-list-thumbnail svg{width:20px}.coach-review-list-content{align-content:center;gap:5px;min-width:0;display:grid}.coach-review-list-top{justify-content:space-between;align-items:start;gap:8px;min-width:0;display:flex}.coach-review-list-top>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;line-height:18px;overflow:hidden}.pending-dot{color:#fde68a;white-space:nowrap;flex:none;align-items:center;gap:5px;font-size:10px;font-weight:600;display:inline-flex}.pending-dot:before{content:"";background:#fbbf24;border-radius:50%;width:6px;height:6px}.coach-review-skill{color:#d5dbea;overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-width:0;font-size:12px;line-height:17px;display:-webkit-box;overflow:hidden}.coach-review-list-meta{min-width:0;color:var(--narilo-dark-text-secondary);justify-content:space-between;align-items:center;gap:7px;font-size:10px;display:flex}.coach-review-list-meta time{align-items:center;gap:4px;min-width:0;display:flex}.coach-review-list-meta svg{flex:none;width:12px}.coach-review-file{color:#76839c;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;overflow:hidden}.coach-review-list-toggle{width:calc(100% - 24px);min-height:42px;color:var(--narilo-blue);background:#00c2ff14;border:1px solid #00c2ff47;border-radius:11px;justify-content:center;align-items:center;margin:0 12px 12px;padding:8px 12px;font-size:13px;font-weight:700;display:flex}.coach-review-list-toggle:hover{background:#00c2ff24}.coach-review-list-toggle:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.coach-review-state,.coach-review-no-selection,.coach-review-preview>div{min-height:360px;color:var(--narilo-dark-text-secondary);text-align:center;align-content:center;place-items:center;gap:9px;padding:28px;display:grid}.coach-review-state svg,.coach-review-no-selection>svg,.coach-review-preview>div>svg{width:34px;height:34px;color:var(--narilo-purple-light)}.coach-review-state strong,.coach-review-no-selection h2,.coach-review-preview strong{color:var(--narilo-dark-text);margin:0;font-size:17px}.coach-review-state span,.coach-review-no-selection p,.coach-review-preview span{max-width:340px;margin:0;font-size:13px;line-height:20px}.coach-review-state.error svg,.coach-review-no-selection.error>svg,.coach-review-preview>div.error>svg{color:#fca5a5}.coach-review-state button,.coach-review-preview button{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);min-height:42px;color:var(--narilo-dark-text);border-radius:10px;justify-content:center;align-items:center;gap:7px;margin-top:6px;padding:8px 13px;display:inline-flex}.coach-review-state button svg,.coach-review-preview button svg{width:16px;height:16px}.coach-review-detail-panel{grid-template-rows:auto auto 1fr;grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr);align-self:start;gap:10px;padding:14px;display:grid;overflow:visible}.coach-review-no-selection{grid-column:1/-1;min-height:400px}.coach-review-detail-head{grid-column:1/-1;justify-content:space-between;align-items:start;gap:16px;min-width:0;display:flex}.coach-review-detail-head>div{min-width:0}.coach-review-detail-head h2{overflow-wrap:anywhere;margin:5px 0 3px;font-size:20px;line-height:1.2}.coach-review-detail-head p{color:var(--narilo-dark-text-secondary);overflow-wrap:anywhere;margin:0;font-size:13px}.coach-review-detail-head p span{color:#64748b;margin:0 5px}.coach-review-detail-avatar{color:#c9c2ff;background:#6c5ce726;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.coach-review-detail-avatar svg{width:20px}.coach-review-preview{border:1px solid var(--narilo-dark-border);background:#050a18;border-radius:14px;grid-row:2/4;place-items:center;width:100%;min-width:0;height:280px;padding:10px;display:grid;overflow:hidden}.coach-review-preview>div{width:100%;min-height:0}.coach-review-preview img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:260px;margin:auto;display:block}.coach-review-metadata{grid-template-columns:.8fr 1.2fr;gap:8px;margin:0;display:grid}.coach-review-metadata>div{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);border-radius:11px;min-width:0;padding:10px}.coach-review-metadata dt{color:var(--narilo-dark-text-secondary);align-items:center;gap:5px;font-size:10px;display:flex}.coach-review-metadata dt svg{width:13px}.coach-review-metadata dd{min-width:0;color:var(--narilo-dark-text);gap:2px;margin:5px 0 0;font-size:12px;display:grid}.coach-review-metadata dd strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.coach-review-metadata dd span{color:var(--narilo-dark-text-secondary);overflow-wrap:anywhere;font-size:10px}.coach-review-decision{background:#6c5ce70f;border:1px dashed #6c5ce761;border-radius:15px;grid-template-columns:minmax(210px,1fr) minmax(180px,.7fr);gap:6px;padding:10px;display:grid}.coach-review-decision>div:first-child>span{color:var(--narilo-purple-light);letter-spacing:.12em;font-size:10px;font-weight:700}.coach-review-decision h3{margin:5px 0;font-size:15px}.coach-review-decision>div:first-child p{color:var(--narilo-dark-text-secondary);margin:0;font-size:11px;line-height:17px}.coach-approval-fields{align-content:start;gap:9px;display:grid}.coach-training-field,.coach-status-field{gap:4px;display:grid}.coach-review-decision label{color:var(--narilo-dark-text-secondary);font-size:11px}.coach-review-decision select{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);color:#7e8aa2;border-radius:10px;width:100%;min-width:0;min-height:38px;padding:7px 9px}.coach-review-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.coach-review-actions button{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);color:#8390a8;border-radius:11px;justify-content:center;align-items:center;gap:7px;min-height:38px;display:inline-flex}.coach-review-actions button svg{width:17px}.coach-review-actions button:disabled,.coach-review-decision select:disabled{cursor:not-allowed;opacity:.68}.coach-review-decision>p{color:#c7cfde;grid-column:1/-1;align-items:flex-start;gap:6px;margin:0;font-size:11px;line-height:17px;display:flex}.coach-review-decision>p svg{color:#fbbf24;flex:none;width:14px}@media (max-width:1100px){.coach-review-layout{grid-template-columns:1fr}.coach-review-page{padding-left:24px;padding-right:24px}.mobile-coach-nav{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:900px){.app-shell>.app-main:has(.coach-review-page){padding-top:128px}.coach-review-page{min-height:calc(100vh - 128px);padding-top:24px}.coach-review-layout{grid-template-columns:1fr}.coach-review-detail-panel{padding:20px;display:block}.coach-review-detail-head{margin-bottom:16px}.coach-review-preview{height:auto;min-height:280px}.coach-review-preview img{max-height:min(70vh,720px)}.coach-review-metadata{margin:13px 0}.coach-review-decision{grid-template-columns:1fr}.coach-review-decision>*{grid-column:1!important}.coach-review-no-selection{min-height:390px}}@media (max-width:600px){.coach-review-page{padding:20px 14px max(28px,env(safe-area-inset-bottom,0px))}.coach-review-heading{align-items:start;margin-bottom:18px}.coach-review-heading h1{font-size:28px}.coach-review-heading>div>span{font-size:13px}.coach-review-heading>strong{min-width:68px;font-size:20px}.coach-review-list-panel,.coach-review-detail-panel{border-radius:16px}.coach-review-list-panel>header,.coach-review-detail-panel{padding:15px}.coach-review-list{padding:8px}.coach-review-list-toggle{width:calc(100% - 16px);margin:0 8px 8px}.coach-review-list li>button{grid-template-columns:64px minmax(0,1fr);min-height:104px;padding:11px}.coach-review-list-thumbnail{width:64px;height:80px}.coach-review-list-top{flex-direction:column;align-items:flex-start;gap:4px}.coach-review-file{white-space:normal;overflow-wrap:anywhere}.coach-review-preview{min-height:220px;padding:10px}.coach-review-preview img{max-height:min(70dvh,640px)}.coach-review-preview>div{min-height:190px;padding:18px}.coach-review-metadata{grid-template-columns:1fr}.coach-review-decision{padding:14px}.coach-review-actions{grid-template-columns:1fr}.coach-review-actions button{min-height:48px}.coach-review-no-selection{min-height:330px;padding:22px}}@media (prefers-reduced-motion:reduce){.coach-review-list li>button{transition:none}.coach-review-page .spin{animation:none}}.coach-review-list-top>strong{max-width:100%}.coach-review-load-more{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);width:calc(100% - 24px);min-height:42px;color:var(--narilo-dark-text);border-radius:11px;justify-content:center;align-items:center;margin:0 12px 12px;padding:8px 12px;font-size:13px;font-weight:700;display:flex}.coach-review-load-more:disabled{cursor:wait;opacity:.68}.coach-review-load-more:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.coach-review-page-error button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.coach-review-page-error{color:#fecaca;border:1px solid #fca5a54d;border-radius:11px;justify-content:space-between;align-items:center;gap:10px;margin:0 12px 12px;padding:10px 12px;font-size:12px;display:flex}.coach-review-page-error button{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);min-height:36px;color:var(--narilo-dark-text);border-radius:9px;padding:6px 10px}@media (max-width:1100px){.coach-review-detail-panel,.coach-review-detail-head h2,.coach-review-no-selection h2{scroll-margin-top:152px}}@media (max-width:600px){.coach-review-detail-panel,.coach-review-detail-head h2,.coach-review-no-selection h2{scroll-margin-top:138px}.coach-review-page-error{flex-direction:column;align-items:stretch}.coach-review-page-error button{min-height:42px}}.athlete-submission-fields input{border:1px solid var(--narilo-dark-border);width:100%;min-height:43px;color:var(--narilo-dark-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font:inherit;background:#111a32;border-radius:11px;padding:9px 11px}.athlete-submission-fields input:disabled{cursor:not-allowed;opacity:.55}.athlete-submission-fields input:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.coach-review-notice{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);border-radius:13px;justify-content:space-between;align-items:center;gap:12px;width:min(1480px,100%);margin:0 auto 16px;padding:12px 14px;font-size:13px;display:flex}.coach-review-notice>span{align-items:center;gap:8px;display:flex}.coach-review-notice svg{flex:none;width:18px}.coach-review-notice.success{color:#a7f3d0;border-color:#34d39966}.coach-review-notice.error{color:#fecaca;border-color:#f871716b}.coach-review-notice.uncertain{color:#fde68a;border-color:#fbbf246b}.coach-review-notice button,.coach-training-error button{min-height:38px;color:inherit;background:0 0;border:1px solid;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:7px 10px;display:inline-flex}.coach-training-field{align-content:start;gap:5px;min-width:0;display:grid}.coach-training-field>label{color:var(--narilo-dark-text-secondary);font-size:11px}.coach-training-field select{width:100%;color:var(--narilo-dark-text)}.coach-training-field select:disabled{color:#7e8aa2}.coach-training-field>p{color:#fde68a;margin:2px 0 0;font-size:11px}.coach-training-status{border:1px solid var(--narilo-dark-border);min-height:38px;color:var(--narilo-dark-text-secondary);border-radius:10px;align-items:center;gap:7px;padding:7px 9px;font-size:11px;display:flex}.coach-training-status svg,.coach-training-error svg{width:15px}.coach-training-error{color:#fecaca;gap:7px;font-size:11px;display:grid}.coach-training-error button{justify-self:start}.coach-review-actions button:not(:disabled){cursor:pointer;color:var(--narilo-dark-text);font-weight:700}.coach-review-actions button.approve:not(:disabled){background:#10b9811f;border-color:#34d3996b}.coach-review-actions button.reject:not(:disabled){background:#ef44441c;border-color:#f8717173}:is(.coach-review-actions button:focus-visible,.coach-review-decision select:focus-visible,.coach-training-error button:focus-visible,.coach-review-notice button:focus-visible){outline:2px solid var(--narilo-blue);outline-offset:2px}.coach-decision-backdrop{z-index:2000;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#020617c7;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.coach-decision-dialog{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface);width:min(520px,100%);max-height:calc(100dvh - 40px);color:var(--narilo-dark-text);border-radius:20px;padding:22px;overflow-y:auto;box-shadow:0 28px 80px #00000073}.coach-decision-dialog.approve{border-top:4px solid #34d399}.coach-decision-dialog.reject{border-top:4px solid #f87171}.coach-decision-dialog>header{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.coach-decision-dialog>header>span{background:#6c5ce724;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.coach-decision-dialog.approve>header>span{color:#6ee7b7}.coach-decision-dialog.reject>header>span{color:#fca5a5}.coach-decision-dialog>header svg{width:21px}.coach-decision-dialog small{color:var(--narilo-dark-text-secondary);letter-spacing:.12em;font-size:10px;font-weight:800}.coach-decision-dialog h2{margin:3px 0 0;font-size:21px}.coach-decision-dialog>header>button{background:var(--narilo-dark-surface-hover);width:42px;height:42px;color:var(--narilo-dark-text);border:0;border-radius:10px;place-items:center;display:grid}.coach-decision-dialog>p{color:var(--narilo-dark-text-secondary);margin:18px 0;font-size:13px;line-height:20px}.coach-decision-dialog dl{gap:8px;margin:0;display:grid}.coach-decision-dialog dl>div{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);border-radius:11px;padding:10px 12px}.coach-decision-dialog dt{color:var(--narilo-dark-text-secondary);text-transform:uppercase;font-size:10px}.coach-decision-dialog dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:13px;font-weight:700}.coach-decision-dialog footer{grid-template-columns:1fr 1fr;gap:9px;margin-top:20px;display:grid}.coach-decision-dialog footer button{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);min-height:46px;color:var(--narilo-dark-text);border-radius:11px;padding:9px 12px;font-weight:700}.coach-decision-dialog footer .confirm-approve{background:#047857;border-color:#34d399}.coach-decision-dialog footer .confirm-reject{background:#b91c1c;border-color:#f87171}.coach-decision-dialog button:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.coach-decision-dialog button:disabled{cursor:wait;opacity:.65}.coach-decision-progress{color:#fde68a;background:#fbbf241a;border-radius:10px;align-items:center;gap:8px;margin-top:14px;padding:11px;font-size:12px;display:flex}.coach-decision-progress svg{width:17px}@media (max-width:600px){.coach-review-notice{flex-direction:column;align-items:stretch}.coach-review-notice button{min-height:44px}.coach-decision-backdrop{padding:max(8px,env(safe-area-inset-top,0px)) max(8px,env(safe-area-inset-right,0px)) max(8px,env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));align-items:end}.coach-decision-dialog{border-radius:18px;width:100%;max-height:calc(100dvh - 16px);padding:18px 15px}.coach-decision-dialog footer{grid-template-columns:1fr}.coach-decision-dialog footer button{min-height:48px}}.coach-review-detail-panel .coach-review-metadata{grid-template-columns:repeat(3,minmax(0,1fr))}.coach-review-decision{grid-column:1/-1;grid-template-columns:1fr;padding:16px}.coach-review-decision>*{grid-column:1/-1}.coach-approval-fields{gap:16px}.coach-placement-fieldset,.coach-status-fieldset{border:0;min-width:0;margin:0;padding:0}.coach-placement-fieldset legend,.coach-status-fieldset legend{color:var(--narilo-dark-text);margin-bottom:8px;font-size:12px;font-weight:800}.coach-placement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.coach-placement-card{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);min-width:0;color:var(--narilo-dark-text);border-radius:13px;padding:13px}.coach-placement-card.selected{border-color:var(--narilo-blue);box-shadow:inset 0 0 0 1px var(--narilo-blue)}.coach-placement-card.disabled{opacity:.72}.coach-placement-card>label{cursor:pointer;display:block}.coach-placement-card>label>input{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.coach-placement-card>label>span{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.coach-placement-card>label svg{width:18px;height:18px;color:var(--narilo-purple-light)}.coach-placement-card>label>input:focus-visible+span{outline:2px solid var(--narilo-blue);outline-offset:4px;border-radius:6px}.coach-placement-card>time{color:#e2e8f0;margin:12px 0 6px;font-size:13px;font-weight:700;display:block}.coach-placement-card>p{color:#c7cfde;margin:10px 0 0;font-size:11px;line-height:17px}.coach-training-options{gap:6px;margin-top:11px;display:grid}.coach-training-options>label{cursor:pointer;border:1px solid #94a3b83d;border-radius:9px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;padding:8px;display:grid}.coach-training-options>label:has(input:checked){background:#10b9811a;border-color:#34d399}.coach-training-options input:focus-visible{outline:2px solid var(--narilo-blue);outline-offset:2px}.coach-training-options span{gap:2px;min-width:0;display:grid}.coach-training-options strong{overflow-wrap:anywhere;font-size:12px}.coach-training-options time{color:#c7cfde;font-size:11px}.coach-status-fieldset>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;display:grid}.coach-status-fieldset button{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);color:#d5dbea;border-radius:11px;align-content:center;place-items:center;gap:4px;min-width:0;min-height:74px;padding:8px;font-size:11px;display:grid;position:relative}.coach-status-fieldset button>svg{width:18px;height:18px}.coach-status-fieldset button>svg:last-of-type{color:#6ee7b7;width:14px;height:14px;position:absolute;top:5px;right:5px}.coach-status-fieldset button.selected{color:var(--narilo-dark-text);background:#10b9811f;border-color:#34d399;font-weight:800}:is(.coach-status-fieldset button:focus-visible,.coach-note-field textarea:focus-visible){outline:2px solid var(--narilo-blue);outline-offset:2px}.coach-note-field{gap:6px;display:grid}.coach-note-field label{color:var(--narilo-dark-text);font-size:12px;font-weight:800}.coach-note-field label span{color:var(--narilo-dark-text-secondary);font-weight:500}.coach-note-field textarea{resize:vertical;border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);width:100%;min-width:0;color:var(--narilo-dark-text);font:inherit;border-radius:11px;padding:10px 11px;line-height:1.45}.coach-note-field textarea[aria-invalid=true]{border-color:#f87171}.coach-note-field textarea::placeholder{color:#94a3b8}.coach-note-count{color:var(--narilo-dark-text-secondary);justify-self:end;font-size:10px}.coach-field-error{color:#fecaca;margin:0;font-size:12px;line-height:18px}.coach-note-summary{white-space:pre-wrap}.coach-review-actions button:disabled{color:#94a3b8}.coach-decision-dialog footer .confirm-approve{color:#fff}@media (max-width:900px){.coach-review-detail-panel .coach-review-metadata{grid-template-columns:repeat(2,minmax(0,1fr))}.coach-status-fieldset>div{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:700px){.coach-placement-grid{grid-template-columns:1fr}}@media (max-width:600px){.coach-review-detail-panel .coach-review-metadata{grid-template-columns:1fr}.coach-status-fieldset>div{grid-template-columns:repeat(2,minmax(0,1fr))}.coach-status-fieldset button{min-height:66px}}@media (min-width:901px){.coach-review-preview{height:clamp(320px,38vw,520px)}.coach-review-preview img{object-position:center;max-height:100%}}.athlete-submissions,.athlete-media-modal{color:var(--narilo-dark-text)}.athlete-media-modal{background:#050916}.athlete-media-modal>div{background:var(--narilo-dark-surface)}@media (min-width:601px){.athlete-media-modal>img{place-self:center;width:auto;max-width:100%;height:auto;max-height:100%}}@media (max-width:900px){.media-card .coach-media-thumbnail,.training-card-preview,.athlete-compare-media,.athlete-compare-card figure>div{aspect-ratio:auto;background:#050a18;place-items:center;height:auto;min-height:0;display:grid}.media-card .coach-media-thumbnail>img,.media-card .coach-media-thumbnail>video,.training-card-preview>img,.training-card-preview>video,.athlete-app-shell .athlete-media-grid.compact img,.athlete-app-shell .athlete-media-grid.compact video,.athlete-app-shell .athlete-media-library .athlete-media-open>img,.athlete-app-shell .athlete-media-library .athlete-media-open>video,.athlete-compare-picker img,.athlete-compare-picker video,.athlete-compare-media img,.athlete-compare-media video,.athlete-compare-card figure img,.athlete-submission-preview>img,.athlete-pending-thumbnail>img{aspect-ratio:auto;object-fit:contain;object-position:center;background:#050a18;width:auto;max-width:100%;height:auto;min-height:0;max-height:min(70dvh,720px);margin:auto;display:block}.coach-media-viewer>img,.coach-media-viewer>video,.athlete-media-modal>img,.athlete-media-modal>video{object-fit:contain;object-position:center;place-self:center;width:auto;min-width:0;max-width:100%;height:auto;min-height:0;max-height:min(70dvh,720px);display:block}.coach-review-preview{aspect-ratio:auto;background:#050a18;border:0;width:100%;height:auto;min-height:0;max-height:min(70dvh,720px);padding:0}.coach-review-preview img{object-fit:contain;object-position:center;width:auto;max-width:100%;height:auto;max-height:min(70dvh,720px)}.coach-review-metadata{gap:0;display:grid;grid-template-columns:1fr!important;margin:16px 0 20px!important}.coach-review-metadata>div{border:0;border-bottom:1px solid var(--narilo-dark-border);background:0 0;border-radius:0;padding:12px 0}.coach-review-metadata dt{font-size:11px}.coach-review-metadata dd{margin-top:5px;font-size:13px}.coach-review-metadata dd strong{white-space:normal;overflow-wrap:anywhere}.coach-status-fieldset legend{margin-bottom:9px;font-size:14px}.coach-status-fieldset>div{flex-wrap:wrap;gap:8px;display:flex}.coach-status-fieldset button{border:1px solid var(--narilo-dark-border);background:var(--narilo-dark-surface-hover);width:auto;max-width:100%;min-height:44px;color:var(--narilo-dark-text);white-space:normal;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:8px 11px;font-size:14px;font-weight:700;line-height:20px;display:inline-flex}.coach-status-fieldset button>svg{flex:none;width:20px!important;height:20px!important;position:static!important}.coach-status-fieldset button.new>svg{color:#60a5fa}.coach-status-fieldset button.practicing>svg{color:#fb923c}.coach-status-fieldset button.improving>svg{color:#facc15}.coach-status-fieldset button.stable>svg{color:#a78bfa}.coach-status-fieldset button.mastered>svg{color:#4ade80}.coach-status-fieldset button:hover:not(:disabled){border-color:color-mix(in srgb,var(--narilo-purple) 70%,#fff);background:color-mix(in srgb,var(--narilo-purple) 12%,var(--narilo-dark-surface-hover))}.coach-status-fieldset button.selected{background:color-mix(in srgb,var(--narilo-purple) 22%,var(--narilo-dark-surface-hover));border-color:#a78bfa;box-shadow:0 0 0 2px #a78bfa1f}.coach-status-fieldset button:disabled{cursor:not-allowed;opacity:.55}}@media (max-width:600px){.athlete-submission-pending .athlete-pending-open{align-content:start;min-height:0}.athlete-submission-pending .athlete-pending-open>.athlete-pending-thumbnail{align-self:start;height:auto;min-height:0}.athlete-submission-pending .athlete-pending-thumbnail>img{width:auto;max-width:100%;height:auto;min-height:0;max-height:min(70dvh,640px)}.athlete-pending-modal>img{min-height:0}.coach-status-fieldset button{min-height:44px}}
