:root{--red:#268a50;--red2:#17653a;--black:#f3f8f3;--panel:rgba(255,255,255,.95);--line:#d8e7da;--text:#24322a;--muted:#6d7c72;--field:#39a663;--field-bright:#70c78d;--field-line:rgba(38,138,80,.07);--surface:#fff;--surface-soft:#f5f9f5;--surface-green:#edf7ef;--shadow:0 12px 34px rgba(41,82,54,.10),0 2px 8px rgba(41,82,54,.05)}body,html{width:100%;max-width:100%;overflow-x:clip}main.app-shell,main.coach-shell,main.parent-shell,main.player-shell{margin-top:0;padding-top:max(24px,calc(env(safe-area-inset-top) + 16px))}main.app-shell>*,main.coach-shell>*,main.parent-shell>*,main.player-shell>*{min-width:0;max-width:100%}button,input,select,textarea{max-width:100%;box-sizing:border-box}a,b,h1,h2,h3,h4,p,span,strong{min-width:0}.button,.menu-card b,.owner-actions,.ownerbar h2{word-break:keep-all;line-break:strict}.coach-page-header h1,.page-header h1,.parent-page-header h1,.player-header h1,.section-title h3{max-width:100%;overflow-wrap:anywhere;line-height:1.25}.owner-schedule-form>*{min-width:0;max-width:100%}.owner-schedule-form input,.owner-schedule-form select,.owner-schedule-form textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.owner-schedule-form input[type=date],.owner-schedule-form input[type=datetime-local]{-webkit-min-logical-width:0}.stats-grid{grid-template-columns:minmax(0,280px)}html{min-height:100%;background-color:#4b9f55;background-image:url(/images/field-grass.jpg);background-position:top;background-repeat:repeat-y;background-size:cover;color-scheme:light}body{min-height:100dvh;color:var(--text);background:linear-gradient(rgba(247,251,247,.02),rgba(231,244,234,.06)),url(/images/field-grass.jpg) top/cover no-repeat;background-attachment:fixed}body:after,body:before{opacity:0}.applications-panel,.coach-hero,.coach-overview-card,.coach-page-header,.coach-player-card,.coach-section,.daily-editor,.daily-history,.detail-panel,.empty,.error-panel,.growth-metric-card,.login-card,.menu-panel,.mini-panel,.owner-avatar-panel,.owner-daily-card,.owner-player-row,.ownerbar,.page-header,.panel-glass,.parent-child-summary,.parent-empty,.parent-growth-intro,.parent-hero,.parent-home-card,.parent-link-row,.parent-page-header,.player-card,.player-state,.player-welcome,.reflection-card,.schedule-list-card,.steady-card{color:var(--text);background:linear-gradient(150deg,rgba(255,255,255,.88),rgba(248,252,249,.82));border-color:rgba(215,231,219,.92);box-shadow:0 9px 26px rgba(35,72,45,.1),0 2px 6px rgba(35,72,45,.05);backdrop-filter:blur(7px) saturate(106%);-webkit-backdrop-filter:blur(7px) saturate(106%)}.coach-hero,.coach-page-header,.hero,.ownerbar,.page-header,.parent-hero,.parent-page-header,.player-header{border-bottom-color:rgba(46,148,80,.34)}.parent-hero,.parent-page-header,.player-welcome{background:linear-gradient(135deg,#fff,#edf8f0)}.logo-mark{color:#fff;background:linear-gradient(145deg,#55b978,#23894e);border-color:#fff;box-shadow:0 0 0 3px rgba(44,143,76,.12),0 9px 24px rgba(35,116,61,.16)}.attendance-none,.empty,.eyebrow,.hero p,.muted,.owner-avatar-copy>p,.page-header p,.parent-child-summary p,.parent-child-summary span,.parent-growth-intro p,.parent-growth-intro small,.parent-home-card>small,.parent-home-card>span,.parent-home-card>time,.player-state,.section-title p{color:#536159}.eyebrow{font-size:12px}.back-link,.card-top-link,.coach-feedback-card header span,.coach-feedback-card summary,.coach-log-row.pressable>span,.coach-targets summary,.daily-history time,.data-row time,.date-chip,.eyebrow.red,.feedback-time-link,.growth-sort .button.active,.parent-child-selector small,.parent-growth-mini strong,.retry-link,.schedule-date strong,.schedule-detail-open{color:#27884f}.card-icon,.menu-code{color:#267e49!important;background:#e8f5ec;border-color:#c7e5d0}.badge,.role-chip{color:#267e49;background:#e8f5ec;border-color:#c8e5d1}.status-chip{background:#f7faf7;border-color:#d7e2d9;color:#657269}.status-chip.approved,.status-chip.attending{color:#197342;background:#e9f7ee;border-color:#bfe2ca}.status-chip.absent,.status-chip.rejected{color:#b5343d;background:#fff0f1;border-color:#f0c1c5}.status-chip.late,.status-chip.pending{color:#8b681c;background:#fff8e7;border-color:#ead8a7}.primary{color:#fff;background:linear-gradient(135deg,#45a969,#21824a);box-shadow:0 7px 17px rgba(32,126,70,.18)}.primary:hover{background:linear-gradient(135deg,#399d5f,#176f3c)}.attendance-button,.detail-link,.filter-button,.secondary{color:#257846;background:#fff;border-color:#bcd9c4}.attendance-button.selected,.filter-button.active{color:#fff;background:#338f57;border-color:#338f57}.pressable:hover{border-color:#80be92;box-shadow:0 13px 30px rgba(40,108,58,.13)}.pressable:focus-visible{outline-color:rgba(39,139,79,.35)}.pressable:active{box-shadow:0 3px 10px rgba(40,90,53,.11)}.button.danger,.danger,.feedback-delete-form .button.danger{color:#b52934;background:#fff3f4;border-color:#e9afb5}.coach-feedback-form input,.coach-feedback-form select,.coach-feedback-form textarea,.coach-theme-form textarea,.daily-theme-form textarea,.login-card input,.menu-card,.monthly-goal-form textarea,.owner-daily-form textarea,.owner-player-form input,.owner-player-form select,.parent-link-form input:not([type]),.parent-link-form input[type=text],.search-input-wrap{color:var(--text);background:#fff;border-color:#cfdcd2}.search-input-wrap input{color:var(--text)}.search-input-wrap input::-webkit-search-cancel-button{filter:none}.search-input-wrap:focus-within{border-color:#4fa66b;box-shadow:0 0 0 3px rgba(53,155,86,.12)}.menu-card{color:var(--text);background:#fff}.application-row:hover,.menu-card:hover{background:#f2f8f3}.application-data dt,.application-person span,.application-row time,.coach-theme-form label,.daily-theme-form label,.detail-fields dt,.menu-card div span,.monthly-goal-form label,.owner-daily-form label,.owner-player-form label,.owner-player-row p,.owner-player-row span{color:#536159}.application-data>div,.application-row,.daily-history article,.data-row,.detail-fields>div,.team-attendance,.team-attendance-unavailable{border-color:#e1ebe3}.coach-nav,.parent-nav,.player-nav,.role-bottom-nav{background:rgba(255,255,255,.88);border:1px solid #d6e4d9;box-shadow:0 14px 34px rgba(38,85,50,.14);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.coach-nav-item,.parent-nav-item,.player-nav-item,.role-bottom-nav-item{color:#69766d}.coach-nav-item.active,.parent-nav-item.active,.player-nav-item.active,.role-bottom-nav-item.active{color:#1f7d46;background:#e9f6ed;box-shadow:inset 0 0 0 1px #c7e5d0}.schedule-calendar,.schedule-modal{color:var(--text);background:rgba(255,255,255,.89);border-color:#d7e4d9;box-shadow:var(--shadow)}.calendar-day{color:var(--text);background:#fbfdfb;border-color:#dfe9e1}.calendar-day.selected{background:#eaf6ed;box-shadow:inset 0 0 0 2px #4ea46a}.calendar-day.today>b{color:#fff;background:#3a9a5d}.calendar-event,.calendar-event.practice{color:#245d38;background:#e5f4e9;border-left-color:#3d9a5d}.calendar-event.game{color:#9d2931;background:#fbe9eb;border-left-color:#d34a54}.calendar-event.event,.calendar-event.meeting{color:#225f93;background:#e7f2fc;border-left-color:#4a8fc4}.calendar-event.other{color:#4d5951;background:#edf1ee;border-left-color:#7c8980}.calendar-event.birthday{color:#725615;background:#fff7dc;border-left-color:#e3bd58}.schedule-modal-backdrop{background:rgba(37,55,43,.38);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.schedule-modal-close{color:#425047;background:#fff;border-color:#ccd9cf}.attendance-status-section,.monthly-coach-theme,.monthly-goals-readonly,.schedule-modal-description,.schedule-modal-meta>div,.theme-pair>div{background:#f7faf7;border-color:#dde8df}.attendance-status-section.attendance-present{border-left-color:#51ad70}.attendance-status-section.attendance-absent{border-left-color:#dc6570}.attendance-status-section.attendance-pending{border-left-color:#9ca7a0}.attendance-status-section h4 b{color:#455249;background:#e7eee8}.attendance-person-chip{color:#26342b;background:#eef4ef}.attendance-person-chip small{color:#318754}.attendance-inline-note,.attendance-note-list button{color:#59665d;background:#f0f4f1}.attendance-toast,.toast{color:var(--text);background:#fff;border-color:#d6e3d8;box-shadow:var(--shadow)}.toast-close{color:#526057}.team-attendance summary,.team-attendance summary>span{color:#47554b}.team-attendance summary>b{color:#28864f}.team-attendance-rows>div{background:#f4f8f5}.coach-feedback-card,.feedback-home-item,.home-video-card,.library-card,.video-room-card{color:var(--text);background:rgba(255,255,255,.87);border-color:#dbe7dd;box-shadow:0 8px 22px rgba(43,84,54,.08)}.home-video-item{padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.3);background:#0b0f0d;box-shadow:0 8px 20px rgba(14,55,31,.16)}.home-video-item .home-video-thumb-wrap{border-radius:0}.home-video-item>div:last-child{padding:14px 16px 16px}.home-video-item b{display:-webkit-box;margin:0;overflow:hidden;color:#fff;font-size:17px;font-weight:850;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.home-video-item>div:last-child>span{margin-top:7px;color:#cbd3ce;font-size:14px;line-height:1.45}.video-card-copy{padding:16px}.video-card-copy h2{display:-webkit-box;margin:11px 0 7px;overflow:hidden;color:#17211b;font-size:20px;font-weight:900;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.video-card-copy time{display:block;color:#59665e;font-size:14px;line-height:1.45}.video-kickers span{font-size:11px;line-height:1.2}.shared-card-tags{margin-top:11px}.shared-card-tags span{color:#59635d;font-size:11px}@media(max-width:600px){.home-video-item>div:last-child{padding:15px 16px 17px}.video-card-copy{padding:16px}.video-card-copy h2{font-size:18px}}.publish-options{margin:0;padding:0;border:0}.publish-options>legend{margin-bottom:8px;color:#1d2a22;font-size:13px;font-weight:900}.publish-options>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:9px;gap:9px}.publish-options label{min-width:0;min-height:64px;padding:11px 12px;display:flex!important;grid-template-columns:none!important;flex-direction:row!important;align-items:flex-start;gap:9px!important;border:1px solid #c9d8cc;border-radius:12px;background:rgba(255,255,255,.72)}.publish-options label:has(input:checked){border-color:#2b9960;background:rgba(222,244,228,.88);box-shadow:0 0 0 2px rgba(43,153,96,.12)}.publish-options input{width:20px!important;min-width:20px;min-height:20px!important;margin:2px 0 0;padding:0;accent-color:#238b55}.publish-options span{min-width:0;display:grid;grid-gap:3px;gap:3px;color:#17251c!important}.publish-options b{font-size:14px}.publish-options small{color:#526258;font-size:12px;line-height:1.45}@media(max-width:600px){.publish-options>div{grid-template-columns:1fr}}.updates-card{background:rgba(255,255,255,.86)}.home-update-list{gap:10px}.home-update-item{min-height:68px;padding:12px 13px;color:var(--text);background:#fff;border-color:#d8e5db;box-shadow:0 4px 13px rgba(43,84,54,.055)}.home-update-item i{background:#43a667;box-shadow:0 0 0 4px #e7f5eb}.home-update-item b{color:#26342b;font-size:14px;line-height:1.45}.home-update-item span{margin-top:4px;color:#47554c;font-size:13px;line-height:1.5}.home-update-item time{color:#536159;font-size:12px;font-weight:750}.updates-card .player-card-title h3{font-size:20px}.updates-card .card-top-link{font-size:12px}.coach-feedback-card p,.feedback-home-item span,.monthly-coach-theme p,.monthly-goals-readonly p{color:#536159}.feedback-time-link{border-color:#b9dcc4;background:#f7fbf8}.progress-track{background:#e5eee7}.progress-track span{background:linear-gradient(90deg,#23824a,#73c38d)}.home-video-thumb,.library-thumb,.owner-avatar-preview,.owner-player-avatar,.video-room-thumb{border-color:#d8e5db;box-shadow:0 8px 22px rgba(42,81,52,.11)}.owner-player-row{color:var(--text);background:rgba(255,255,255,.87)}.owner-player-row b,.owner-player-row h2{color:#26342b}.owner-player-row p b{color:#58655c}.owner-player-row>strong,.owner-player-state>strong{color:#298750}.owner-player-state>span{background:#edf5ef;color:#4e6154}.owner-avatar-preview,.owner-player-avatar{color:#2d8650;background:linear-gradient(145deg,#edf7ef,#dcecdf)}.owner-player-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.owner-player-row{padding:0 0 14px;display:block;border-radius:18px;overflow:hidden}.owner-player-row .owner-player-avatar{width:100%;height:auto;aspect-ratio:4/3;border:0;border-radius:0}.owner-player-row .owner-player-main{padding:13px 13px 8px;display:grid;grid-gap:5px!important;gap:5px!important}.owner-player-row .owner-player-main h2{font-size:17px;line-height:1.3}.owner-player-row .owner-player-main h2,.owner-player-row .owner-player-main p{min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.owner-player-category{width:max-content;padding:4px 7px;border-radius:999px;background:#e8f5eb;color:#237545!important;font-size:11px!important;font-weight:900}.owner-player-row .owner-player-state{padding:0 13px;justify-content:space-between;text-align:left}.owner-notification-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.owner-notification-actions .button.danger{min-height:44px;padding:8px 12px}.owner-avatar-preview{border-color:#cfdfd2}.owner-player-derived{background:#f7faf7;border-color:#dce7de}.empty,.player-state{background:rgba(255,255,255,.74);border-color:#cbdccc}.skeleton{background:linear-gradient(90deg,#eaf0eb,#f8faf8,#eaf0eb);background-size:220% 100%}.birthday-event{border-color:#e7c260!important;box-shadow:inset 3px 0 0 #e1b64c}.form-error{color:#b82f3b}.form-success{color:#247a47}.coach-feed-row span,.coach-feed-row time,.coach-log-row p,.coach-log-row time,.coach-mini-list span,.coach-section p,.coach-section small,.growth-history-row time,.growth-metric-card>small,.growth-metric-card>time,.parent-home-card p,.parent-home-card small,.player-card p,.player-card small,.schedule-list-heading p,.team-attendance summary,.team-attendance summary span,.team-attendance-rows time{color:#4e5c53;font-size:max(14px,1em);line-height:1.5}.coach-section h2,.player-card-title h3,.section-title h2,.section-title h3{color:#1f2d24}.badge,.growth-card-heading small,.growth-card-heading span,.role-chip,.status-chip{font-size:12px}.coach-feed-row b,.coach-mini-list b,.data-row b,.schedule-list-heading h3{font-size:15px}.data-row div span,.schedule-list-heading p{font-size:14px}.library-item-card{color:var(--text);background:rgba(255,255,255,.87);border-color:rgba(211,228,215,.94);box-shadow:0 8px 22px rgba(35,72,45,.1)}.library-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.library-filter{min-height:62px;padding:8px 6px;display:grid;place-items:center;align-content:center;grid-gap:3px;gap:3px;color:#34473b;background:rgba(255,255,255,.84);border-color:#c9ddce}.library-filter small{font-size:10px;font-weight:950;letter-spacing:.1em;line-height:1.15}.library-filter b{font-size:14px;line-height:1.2}.library-filter.active{color:#fff;background:#287f4b;border-color:#1f6d40;box-shadow:0 6px 16px rgba(31,109,64,.18)}.library-card-visual{background:rgba(238,247,240,.76)}.library-card-copy h2{color:#1f2d24}.library-card-copy>div,.library-card-copy>p{color:#4b594f;font-size:14px}.library-category{display:inline-grid;gap:1px;letter-spacing:normal}.library-category small{font-size:9px;font-weight:950;letter-spacing:.09em;line-height:1.15}.library-category b{font-size:12px;line-height:1.25}.library-video-label{position:absolute;right:10px;bottom:10px;padding:6px 9px;border-radius:7px;background:rgba(25,112,61,.9);color:#fff;font-size:11px;font-weight:900;letter-spacing:.08em}.library-detail-video{min-height:0;padding:0;border:0;background:transparent;overflow:visible}.library-youtube{width:100%;display:grid;grid-gap:10px;gap:10px}.library-youtube-frame{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:16px;background:#102117;box-shadow:0 10px 28px rgba(17,52,29,.18)}.library-youtube-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.library-youtube .youtube-external-link{min-height:44px;display:inline-flex;align-items:center;justify-content:center;color:#1f7442;font-size:14px;font-weight:850;text-decoration:none}.library-method legend,.owner-library-form label>span{color:#26342b;font-size:14px}.library-method-copy small,.owner-library-form label>small,.selected-file small,.selected-file span{color:#4e5c53;font-size:13px}.owner-avatar-panel{padding:clamp(16px,3vw,24px);border-radius:20px;display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;grid-gap:22px;gap:22px}.owner-avatar-preview{width:150px;aspect-ratio:1;display:grid;place-items:center;overflow:hidden;border:2px solid #cfdfd2;border-radius:28px;font-size:52px;font-weight:1000}.owner-avatar-preview img{width:100%;height:100%;object-fit:cover}.owner-avatar-copy h2{margin:5px 0}.owner-avatar-copy>p{margin:0 0 14px;line-height:1.6}.owner-avatar-upload{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.owner-avatar-upload label{position:relative}.owner-avatar-upload input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.owner-avatar-copy form+.form-error,.owner-avatar-copy form+.form-success,.owner-avatar-copy>form:last-of-type{margin-top:10px}.owner-avatar-copy .button{min-height:46px}@media(max-width:640px){body{background:linear-gradient(rgba(247,251,247,.01),rgba(231,244,234,.04)),url(/images/field-grass.jpg) top/cover repeat-y;background-attachment:scroll}main.app-shell,main.coach-shell,main.parent-shell,main.player-shell{width:calc(100% - 18px);padding-top:max(22px,calc(env(safe-area-inset-top) + 14px))}.coach-hero,.coach-page-header,.hero,.ownerbar,.page-header,.parent-hero,.parent-page-header,.player-header{min-width:0;max-width:100%}.ownerbar{align-items:stretch;flex-direction:column}.owner-actions{width:100%;align-items:stretch;flex-direction:row;justify-content:space-between}.owner-actions .button{flex:0 0 auto;white-space:nowrap}.ownerbar h2{font-size:clamp(18px,5.6vw,22px)}.menu-card{grid-template-columns:46px minmax(0,1fr) auto}.menu-card,.menu-card div{min-width:0}.menu-card div span{overflow-wrap:anywhere}.owner-schedule-form{width:100%;grid-template-columns:minmax(0,1fr)}.owner-schedule-form .full,.owner-schedule-form>.button{grid-column:1}.owner-schedule-form>.button{width:100%;min-width:0}.home-update-item{grid-template-columns:8px minmax(0,1fr);min-height:72px}.home-update-item time{grid-column:2;margin-top:2px}.owner-avatar-panel{grid-template-columns:92px minmax(0,1fr);gap:14px;padding:15px}.owner-avatar-preview{width:92px;border-radius:20px;font-size:34px}.owner-avatar-upload{display:grid;grid-template-columns:1fr}.owner-avatar-upload .button{width:100%}.library-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.library-filter{min-height:64px}}@media(max-width:430px){.owner-avatar-panel{grid-template-columns:1fr}.owner-avatar-preview{width:112px}.owner-avatar-copy .danger{width:100%}}.login-shell.onboarding-shell{width:min(540px,calc(100% - 28px));min-height:100dvh;margin:0 auto;padding:max(34px,calc(env(safe-area-inset-top) + 22px)) 0 max(38px,calc(env(safe-area-inset-bottom) + 24px));display:grid;grid-template-columns:1fr;place-content:center;align-items:stretch;grid-gap:24px;gap:24px}.login-logo-plate{width:min(230px,62vw);margin:0 auto;padding:15px 18px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.92);border-radius:24px;background:rgba(255,255,255,.88);box-shadow:0 12px 30px rgba(22,70,37,.18),0 2px 8px rgba(22,70,37,.1);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.login-logo-plate img{display:block;width:100%;height:auto;object-fit:contain}.login-shell .login-card{padding:clamp(22px,5vw,30px)}.login-shell .login-card label{color:#27382d;font-size:14px}.login-shell .login-card input{color:#24322a;background:rgba(255,255,255,.94);border-color:#bfd4c5}.login-shell .auth-switch,.login-shell .login-card .muted{color:#48584d}@media(max-width:520px){.login-shell.onboarding-shell{gap:20px;padding-top:max(28px,calc(env(safe-area-inset-top) + 18px))}.login-logo-plate{width:min(205px,60vw);padding:13px 16px;border-radius:21px}.login-shell .login-card{padding:22px 18px}}body{background-color:#4b9f55;background-image:url(/images/field-grass.jpg);background-position:top;background-repeat:repeat-y;background-size:cover}.player-home-shell{margin-top:0;margin-bottom:0;padding-top:max(34px,calc(env(safe-area-inset-top) + 20px));padding-bottom:calc(154px + env(safe-area-inset-bottom))}.player-shell .player-card,.player-shell>.panel-glass{background:linear-gradient(150deg,rgba(255,255,255,.89),rgba(248,252,249,.84));border-color:rgba(221,235,224,.96);backdrop-filter:blur(2px) saturate(108%);-webkit-backdrop-filter:blur(2px) saturate(108%)}.player-meta{color:#405047;font-size:14px}.player-meta>span:not(.role-chip){border-left-color:#a9bbae}.player-card-title{margin-bottom:14px}.player-card-title h3{font-size:20px;line-height:1.25}.player-card .card-top-link{color:#1f7442;font-size:14px}.home-update-item{grid-template-columns:8px minmax(0,1fr);min-height:76px;padding:13px 14px;align-items:center}.home-update-primary{display:flex;align-items:baseline;gap:8px;min-width:0}.home-update-primary time{flex:0 0 auto;color:#236f43;font-size:14px;font-weight:900}.home-update-primary b{min-width:0;color:#1e2d24;font-size:15px;line-height:1.45}.home-update-item>div>span{display:block;margin-top:4px;overflow:hidden;color:#435248;font-size:14px;line-height:1.45;white-space:nowrap;text-overflow:ellipsis}.schedule-summary>div>b{color:#1d2b23;font-size:18px;line-height:1.35}.schedule-summary>div>span{color:#46554b;font-size:14px;line-height:1.45}.schedule-summary>time{color:#1f7442;font-size:15px}.home-library-item{background:rgba(255,255,255,.62);border-color:#cedfd2;color:#24322a}.home-library-item b{color:#1f2d24;font-size:15px;line-height:1.4}.home-library-item div span{color:#46554b;font-size:13px;line-height:1.45}.home-library-item>strong{color:#257c49}.feedback-home-item span,.player-card p,.player-card small,.steady-card>p,.steady-card>small{color:#435248}.player-nav{padding:7px;gap:6px;background:rgba(255,255,255,.82)}.player-nav-item{min-height:60px;gap:4px;border:1px solid rgba(46,91,58,.12);background:rgba(255,255,255,.7);box-shadow:0 4px 12px rgba(35,78,45,.08);transition:transform .12s ease,background-color .12s ease,box-shadow .12s ease}.player-nav-item:active{transform:scale(.95);box-shadow:0 2px 6px rgba(35,78,45,.08)}.player-nav-item span{font-size:25px;line-height:1}.player-nav-item b{font-size:11px;line-height:1.2}.player-nav-item.active{color:#176b3b;background:rgba(220,244,226,.94);border-color:#b9dec4;box-shadow:inset 0 0 0 1px rgba(50,145,79,.1),0 5px 14px rgba(35,78,45,.1)}.coach-shell,.parent-shell{width:min(1240px,calc(100% - 32px));margin:0 auto;padding-top:max(34px,calc(env(safe-area-inset-top) + 20px));padding-bottom:calc(154px + env(safe-area-inset-bottom));gap:16px}.coach-hero,.coach-page-header,.parent-hero,.parent-page-header{min-height:94px;padding:18px 22px;border-radius:22px;background:linear-gradient(150deg,rgba(255,255,255,.89),rgba(248,252,249,.84))}.coach-hero h1,.coach-page-header h1,.parent-hero h1,.parent-page-header h1{margin:4px 0 8px;font-size:26px;line-height:1.25}.coach-hero p,.coach-page-header p,.parent-hero p,.parent-page-header p{color:#435248;font-size:14px;line-height:1.5}.role-bottom-nav{position:fixed;z-index:80;left:50%;bottom:max(10px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(620px,calc(100% - 24px));min-height:70px;padding:7px;display:grid;grid-template-columns:repeat(var(--nav-count,5),minmax(0,1fr));grid-gap:6px;gap:6px;border-radius:20px}.coach-nav{--nav-count:4}.parent-nav,.player-nav{--nav-count:5}.role-bottom-nav-item{min-width:0;min-height:60px;display:grid;place-items:center;align-content:center;grid-gap:4px;gap:4px;border:1px solid rgba(46,91,58,.12);border-radius:14px;background:rgba(255,255,255,.7);box-shadow:0 4px 12px rgba(35,78,45,.08);text-decoration:none;transition:transform .12s ease,background-color .12s ease,box-shadow .12s ease}.role-bottom-nav-item:active{transform:scale(.95);box-shadow:0 2px 6px rgba(35,78,45,.08)}.role-bottom-nav-item span{font-size:25px;line-height:1}.role-bottom-nav-item b{font-size:11px;line-height:1.2}.coach-feedback-heading{flex-wrap:nowrap;gap:9px}.coach-feedback-heading>div{flex:1 1 auto;min-width:0}.coach-feedback-heading h3{overflow:hidden;font-size:clamp(16px,2.1vw,20px);white-space:nowrap;text-overflow:ellipsis}.coach-feedback-heading .card-top-link{flex:0 0 auto;margin-left:0;padding-inline:6px;white-space:nowrap}.calendar-day{position:relative;min-height:118px;padding:6px}.calendar-day>b{position:absolute;z-index:1;top:6px;left:6px;margin:0}.calendar-day>div{min-width:0;margin-top:30px;display:grid;grid-gap:4px;gap:4px}.calendar-event{min-height:28px;padding:4px 5px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-gap:4px;gap:4px;border-left-width:3px;border-radius:6px;font-size:10px;line-height:1.2}.calendar-event>strong{font-size:10px;white-space:nowrap}.calendar-event>span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:750}.calendar-day small{color:#536159;font-size:10px;font-weight:900}.menu-code{overflow:hidden;text-align:center;white-space:nowrap;line-height:1;font-size:8px!important;letter-spacing:.02em}.schedule-modal-owner-actions{margin-top:18px;padding:18px 0 max(6px,env(safe-area-inset-bottom));border-top:1px solid #d9e3db;display:flex;justify-content:flex-end}.schedule-modal-owner-actions>.button{min-width:210px;min-height:48px}@media(max-width:640px){html{background-color:#4b9f55}body,html{background-image:url(/images/field-grass.jpg);background-position:top;background-repeat:repeat-y;background-size:auto 100svh}body{background-attachment:scroll}.player-home-shell{width:calc(100% - 18px);margin-top:0;margin-bottom:0;padding-top:max(30px,calc(env(safe-area-inset-top) + 18px));padding-bottom:calc(154px + env(safe-area-inset-bottom));gap:14px}.player-header{padding:17px 16px}.player-card{padding:16px}.player-card-title{gap:10px}.card-icon{width:42px;height:42px;flex-basis:42px}.home-update-primary{align-items:flex-start}.home-update-primary b{-webkit-line-clamp:2}.featured-schedule .schedule-list li{gap:14px}.schedule-summary{grid-template-columns:58px minmax(0,1fr);gap:10px}.player-nav{bottom:max(10px,env(safe-area-inset-bottom));width:calc(100% - 14px)}.coach-shell,.parent-shell{width:calc(100% - 18px);padding-top:max(30px,calc(env(safe-area-inset-top) + 18px));padding-bottom:calc(154px + env(safe-area-inset-bottom))}.coach-hero,.coach-page-header,.parent-hero,.parent-page-header{padding:17px 16px}.role-bottom-nav{bottom:max(10px,env(safe-area-inset-bottom));width:calc(100% - 14px)}.coach-feedback-heading{gap:6px}.coach-feedback-heading .card-icon{width:36px;height:36px;flex-basis:36px}.coach-feedback-heading h3{font-size:15px}.coach-feedback-heading .card-top-link{font-size:12px}.schedule-calendar{padding:9px 7px}.calendar-day{min-height:96px;padding:4px 3px}.calendar-day>b{top:4px;left:4px;width:24px;height:24px;font-size:11px}.calendar-day>div{margin-top:28px}.calendar-event{height:auto;min-height:25px;padding:4px 3px;color:inherit;border-left-width:3px;border-radius:5px;font-size:9px}.calendar-event>strong{font-size:9px}.calendar-event>span{display:none}.calendar-event.practice{color:#245d38;background:#e5f4e9}.calendar-event.game{color:#9d2931;background:#fbe9eb}.calendar-event.event,.calendar-event.meeting{color:#225f93;background:#e7f2fc}.calendar-event.other{color:#4d5951;background:#edf1ee}.calendar-event.birthday{color:#725615;background:#fff7dc}.calendar-day small{font-size:9px}.owner-schedule-form input,.owner-schedule-form select,.owner-schedule-form textarea{display:block;inline-size:100%;max-inline-size:100%;min-inline-size:0;font-size:16px}.owner-schedule-form input[type=date],.owner-schedule-form input[type=datetime-local]{-moz-appearance:none;appearance:none;-webkit-appearance:none;overflow:hidden}.owner-schedule-form input[type=date]::-webkit-date-and-time-value,.owner-schedule-form input[type=datetime-local]::-webkit-date-and-time-value{min-width:0;text-align:left}.menu-code{width:46px;max-width:46px;font-size:8px!important;letter-spacing:0}.owner-player-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.owner-player-row{min-width:0;padding:0 0 11px}.owner-player-row .owner-player-main{padding:10px 10px 7px}.owner-player-row .owner-player-main h2{font-size:15px}.owner-player-row .owner-player-state{padding:0 10px}.owner-player-row .owner-player-state>span{display:inline-flex}.owner-player-row .owner-player-state>strong{font-size:18px}.owner-notification-actions{grid-column:1/-1;justify-content:space-between}.schedule-modal-owner-actions{margin-top:14px;padding-top:14px}.schedule-modal-owner-actions>.button{width:100%;min-width:0;min-height:50px}}.google-calendar-settings{display:grid;grid-gap:18px;gap:18px;margin-top:18px}.google-calendar-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.google-calendar-actions form{margin:0}.google-sync-summary{display:flex;align-items:center;justify-content:space-between;gap:18px}.google-sync-summary h2{margin:4px 0}.google-sync-summary p{margin:4px 0 0}.google-sync-control{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.google-sync-control form{margin:0}.google-sync-control .button{min-height:44px}.google-sync-control>a{color:var(--field-green-700,#17663a);font-weight:800}.google-sync-badge{display:inline-flex;min-height:32px;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid rgba(34,91,53,.2);background:rgba(255,255,255,.7);font-size:13px;font-weight:850;color:#31533d}.google-sync-badge.synced{background:rgba(214,246,222,.86);color:#126631}.google-sync-badge.failed{background:rgba(255,227,227,.9);color:#a42028}.google-sync-badge.pending{background:rgba(255,245,207,.9);color:#765a00}.google-sync-control.compact .google-sync-badge{min-height:27px;font-size:12px;padding:4px 8px}.google-sync-control.compact .button{min-height:36px;padding:7px 10px;font-size:12px}@media(max-width:640px){.google-sync-summary{align-items:flex-start;flex-direction:column}.google-calendar-actions,.google-calendar-actions .button,.google-calendar-actions form{width:100%}}