:root{font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#17304e;background:#f5f8fc;font-synthesis:none;text-rendering:optimizeLegibility;--navy:#102b4e;--navy-2:#173d67;--blue:#51b9e6;--blue-2:#168ac4;--muted:#8190a3;--line:#e8eef5;--green:#1b9a71;--red:#d95f66}
*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f5f8fc}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.app-shell{min-height:100vh}.sidebar{width:252px;background:var(--navy);color:#fff;position:fixed;inset:0 auto 0 0;padding:25px 16px 17px;display:flex;flex-direction:column;z-index:20}.brand{height:43px;display:flex;align-items:center;gap:11px;padding:0 9px;margin-bottom:39px}.brand-mark{width:37px;height:37px}.brand-mark svg{width:100%;height:100%;fill:#46b7e5}.brand-mark path+path{fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.brand-copy{display:grid;line-height:1.05;gap:4px}.brand-copy strong{font:800 17px Manrope,sans-serif;letter-spacing:-.6px}.brand-copy small{font-size:9px;letter-spacing:2.6px;color:#8ba5bf;font-weight:700}.nav-label{font-size:9px;color:#8299b2;letter-spacing:1.25px;font-weight:700;padding:0 12px;margin-bottom:11px}.nav-list{display:flex;flex-direction:column;gap:4px}.nav-item{height:43px;border-radius:8px;display:flex;align-items:center;gap:12px;padding:0 12px;font-size:12px;color:#bac9d8;transition:.18s}.nav-item:hover{background:#1b3a5c;color:white}.nav-item.active{background:#1f91c4;color:white;font-weight:600;box-shadow:0 5px 12px #071c3230}.nav-icon{width:17px;font-size:19px;text-align:center;color:#96aec4;line-height:1}.nav-item.active .nav-icon{color:#fff}.nav-count{margin-left:auto;border-radius:20px;padding:2px 7px;background:#e79858;color:white;font-size:9px}.sidebar-bottom{margin-top:auto}.privacy-note{background:#19395e;border:1px solid #294a6b;border-radius:9px;padding:12px 11px;display:flex;align-items:center;gap:10px;margin-bottom:14px}.lock-icon{height:28px;width:28px;border-radius:8px;background:#255078;color:#72c8e8;display:grid;place-items:center;font-size:19px}.privacy-note div,.profile-copy{display:grid;gap:4px}.privacy-note strong{font-size:10px;font-weight:600}.privacy-note small{font-size:9px;color:#9ab0c6}.profile{border-top:1px solid #29415d;padding:16px 3px 0;display:flex;align-items:center;gap:9px}.avatar,.top-avatar{height:31px;width:31px;border-radius:50%;display:grid;place-items:center;background:#d4eff9;color:#20739c;font-size:10px;font-weight:700}.profile-copy{flex:1}.profile-copy strong{font-size:10px}.profile-copy small{font-size:9px;color:#94aac0}.more-button,.metric-menu{border:0;background:none;color:#91a9be;letter-spacing:1px;cursor:pointer;font-size:17px}.main-area{margin-left:252px;min-height:100vh}.topbar{height:65px;background:#fff;border-bottom:1px solid #eaf0f5;display:flex;align-items:center;justify-content:space-between;padding:0 36px}.topbar-left,.topbar-right,.breadcrumb{display:flex;align-items:center}.breadcrumb{gap:10px;font-size:11px;color:#8492a3}.breadcrumb strong{color:#29415d;font-weight:600}.crumb-separator{color:#c0cad4}.topbar-right{gap:19px}.today-label{font-size:10px;color:#7d8da0}.top-avatar{height:29px;width:29px;background:#e7f3fb;color:#317ba4}.icon-button{border:0;background:transparent;cursor:pointer}.notification-button{position:relative;padding:5px;color:#74869a;font-size:18px}.notification-button i{position:absolute;right:2px;top:3px;background:#e36e75;width:6px;height:6px;border:1.5px solid white;border-radius:50%}.menu-toggle{display:none}.page-content{max-width:1440px;padding:28px 36px 18px;margin:auto}.demo-banner{min-height:38px;background:#eef8fc;border:1px solid #d9eff7;border-radius:7px;display:flex;align-items:center;gap:9px;padding:0 12px;color:#537286;font-size:10px}.demo-banner strong{font-size:10px;color:#277ba1}.demo-dot,.small-live-dot{width:7px;height:7px;background:#36a6ce;border-radius:50%;flex:none}.demo-badge{margin-left:auto;background:#d7f0f9;color:#287b9d;border-radius:4px;padding:5px 7px;font-size:8px;font-weight:700;letter-spacing:.45px}.welcome-row{display:flex;justify-content:space-between;align-items:center;margin:26px 0 20px}.eyebrow{font-size:9px;letter-spacing:1px;color:#7390a8;font-weight:700;margin-bottom:7px}h1,h2,p{margin:0}h1{font:800 22px Manrope,sans-serif;color:#193653;letter-spacing:-.65px}.wave{color:#e7ae4f;font-size:17px;margin-left:4px}.welcome-subtitle{font-size:11px;color:#8492a2;margin-top:6px}.period-button,.select-button{height:34px;border:1px solid #e3eaf1;border-radius:6px;background:#fff;padding:0 11px;display:flex;align-items:center;gap:9px;color:#52677d;font-size:10px;cursor:pointer;box-shadow:0 2px 4px #1b36520a}.calendar-icon{color:#328db8;font-size:15px}.chevron{font-size:15px;color:#8493a3;margin-left:5px}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric-card{height:127px;background:#fff;border:1px solid #eaf0f5;border-radius:9px;padding:14px 15px;position:relative;overflow:hidden;box-shadow:0 3px 9px #253f5906}.metric-top{display:flex;align-items:center;gap:8px;position:relative;z-index:1}.metric-icon{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;font-size:17px;font-weight:600}.income-icon{background:#e6f6fb;color:#299fc3}.expense-icon{background:#fff0e8;color:#df9363}.balance-icon{background:#e9f6ef;color:#51a579}.pending-icon{background:#fff6e8;color:#d6a04d}.metric-label{font-size:10px;color:#65788c;font-weight:500}.metric-menu{margin-left:auto;color:#acb9c6}.metric-value{font:800 20px Manrope,sans-serif;color:#193653;letter-spacing:-.6px;margin:13px 0 7px;position:relative;z-index:1}.metric-footer{display:flex;align-items:center;gap:6px;font-size:9px;color:#9aa7b4;position:relative;z-index:1}.change-pill{font-weight:700;padding:3px 5px;border-radius:4px;font-size:8px}.positive{color:#198b66;background:#eaf7f1}.neutral{color:#b1773c;background:#fff4e8}.balance-caption{display:flex;align-items:center;gap:5px;color:#7c8e9e}.small-live-dot{width:5px;height:5px;background:#48a97b}.pending-detail{color:#8d9aaa}.pending-detail strong{color:#c2853a}.text-link{margin-left:auto;color:#298ab3;font-weight:600;font-size:9px}.text-link span{font-size:12px}.metric-decoration{position:absolute;width:70px;height:70px;border-radius:50%;right:-36px;bottom:-43px;opacity:.33}.income-decoration{background:#b9eafa}.expense-decoration{background:#ffdbc4}.balance-decoration{background:#c4ead6}.pending-decoration{background:#ffe7ba}.insights-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,1fr);gap:14px;margin-top:16px}.panel{background:#fff;border:1px solid #eaf0f5;border-radius:9px;box-shadow:0 3px 9px #253f5906}.cashflow-panel,.alerts-panel{height:279px;padding:17px 18px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between}.panel-heading h2{font:700 13px Manrope,sans-serif;color:#203b57}.panel-heading p{font-size:9px;color:#91a0af;margin-top:5px}.select-button{height:27px;font-size:9px;gap:13px;color:#708194;padding:0 8px}.chart-legend{display:flex;justify-content:flex-end;gap:13px;font-size:9px;color:#7f8d9d;margin-top:13px}.chart-legend span{display:flex;align-items:center;gap:5px}.legend-dot{height:7px;width:7px;border-radius:50%}.income-dot{background:#50b8e2}.expense-dot{background:#efb085}.chart-wrap{height:151px;display:flex;margin-top:7px}.y-labels{width:35px;display:flex;flex-direction:column;justify-content:space-between;padding:0 0 20px;color:#a3afbb;font-size:8px}.chart-area{position:relative;flex:1}.grid-lines{position:absolute;inset:4px 0 20px;display:flex;flex-direction:column;justify-content:space-between}.grid-lines i{height:1px;background:#eef2f6}.chart-svg{position:absolute;width:100%;height:calc(100% - 20px);inset:0 0 20px;overflow:visible}.income-area{fill:url(#incomeFill)}.income-line,.expense-line{fill:none;stroke:#55b9e2;stroke-width:2.5;vector-effect:non-scaling-stroke}.expense-line{stroke:#edb083;stroke-width:2}.chart-point{fill:#fff;stroke:#55b9e2;stroke-width:2;vector-effect:non-scaling-stroke}.expense-point{stroke:#edb083}.x-labels{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;color:#9aa8b6;font-size:8px;padding:0 1px}.chart-footnote{text-align:right;color:#a1adba;font-size:8px;margin-top:4px}.view-all{font-size:9px;font-weight:600;color:#298ab3;margin-top:2px}.view-all span{font-size:12px}.alerts-panel{padding-bottom:12px}.alert-list{margin-top:12px}.alert-item{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #eff2f5}.alert-avatar{height:29px;width:29px;border-radius:50%;display:grid;place-items:center;font-size:8px;font-weight:700;flex:none}.alert-avatar.amber{background:#fff2db;color:#ba8845}.alert-avatar.rose{background:#ffebec;color:#c7787f}.alert-avatar.blue{background:#e5f3fa;color:#4e96b3}.alert-copy{display:grid;gap:3px;min-width:0;flex:1}.alert-copy strong{font-size:9px;color:#344e67;font-weight:600}.alert-copy span{font-size:8px;color:#8593a2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alert-copy small{font-size:8px;color:#cf8e52}.alert-amount{font-size:9px;color:#546b81;font-weight:600;white-space:nowrap}.alerts-cta{display:flex;justify-content:center;align-items:center;gap:7px;height:29px;margin-top:8px;border:1px solid #dcecf3;border-radius:5px;color:#388bad;font-size:9px;font-weight:600;background:#f8fcfe}.movements-panel{margin-top:16px;padding:17px 18px 0}.movements-heading{margin-bottom:13px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:650px}thead{background:#f8fafc}th{text-align:left;font-size:8px;letter-spacing:.5px;color:#92a0ae;font-weight:600;padding:10px 9px}td{border-bottom:1px solid #f0f3f6;padding:10px 9px;font-size:9px;color:#738397;white-space:nowrap}tbody tr:last-child td{border-bottom:0}td:first-child{min-width:220px}.movement-icon{display:inline-grid;vertical-align:middle;place-items:center;width:25px;height:25px;border-radius:7px;margin-right:8px;font-size:15px;font-weight:700}.income-movement{background:#e8f6fb;color:#389bc0}.expense-movement{background:#fff0e8;color:#d99061}.movement-name{display:inline-grid;vertical-align:middle;gap:3px;color:#344e67;font-weight:600}.movement-name small{font-size:8px;color:#95a2af;font-weight:400}.category-chip{background:#f1f5f8;border-radius:4px;padding:4px 6px;font-size:8px;color:#76889a}.status-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 6px;border-radius:20px;font-size:8px}.status-pill i{height:5px;width:5px;border-radius:50%}.status-pill.paid{background:#edf8f2;color:#459572}.status-pill.paid i{background:#55aa82}.status-pill.pending{background:#fff6e8;color:#bc8b4a}.status-pill.pending i{background:#dea450}.amount-col{text-align:right}.positive-amount{color:#278a67;font-weight:600}.negative-amount{color:#5e6d7d;font-weight:600}.pending-amount{color:#b9823d;font-weight:600}.mobile-movements{display:none}.page-footer{display:flex;justify-content:space-between;padding:15px 2px 0;color:#9aa7b4;font-size:8px}.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:#173a5c;color:#fff;padding:10px 14px;border-radius:7px;font-size:11px;box-shadow:0 6px 20px #132f4a30;transition:.2s;z-index:50}.toast.visible{opacity:1;transform:translate(-50%,0)}.sidebar-scrim{display:none}

@media(min-width:1500px){.page-content{padding-top:35px}.metrics-grid{gap:18px}.insights-grid{gap:18px;margin-top:19px}.metric-card{height:139px;padding:17px 18px}.metric-value{font-size:22px;margin-top:16px}.cashflow-panel,.alerts-panel{height:300px;padding:20px}.chart-wrap{height:168px}.movements-panel{margin-top:19px;padding:20px 20px 0}}
@media(max-width:1100px){.sidebar{width:224px}.main-area{margin-left:224px}.page-content{padding-left:23px;padding-right:23px}.topbar{padding:0 23px}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{height:122px}.insights-grid{grid-template-columns:1fr}.cashflow-panel{height:270px}.alerts-panel{height:auto;min-height:260px}.chart-wrap{height:145px}}
@media(max-width:700px){body{background:#f5f8fc}.sidebar{width:min(285px,84vw);transform:translateX(-100%);transition:transform .25s ease;box-shadow:10px 0 30px #102b4e20}.sidebar.open{transform:translateX(0)}.sidebar-scrim.show{display:block;position:fixed;inset:0;background:#102b4e55;z-index:19}.main-area{margin-left:0}.topbar{height:57px;padding:0 16px}.topbar-left{gap:12px}.menu-toggle{display:flex;width:25px;height:28px;flex-direction:column;justify-content:center;gap:4px;padding:4px}.menu-toggle span{height:2px;background:#536e85;width:17px;border-radius:2px}.breadcrumb{font-size:10px;gap:7px}.topbar-right{gap:12px}.today-label{display:none}.top-avatar{width:27px;height:27px}.page-content{padding:17px 14px 15px}.demo-banner{flex-wrap:wrap;gap:6px;padding:8px 9px;font-size:9px;line-height:1.35}.demo-banner strong{font-size:9px}.demo-badge{font-size:7px;margin-left:auto;padding:4px 5px}.welcome-row{margin:21px 0 16px;align-items:flex-end;gap:8px}h1{font-size:19px}.welcome-subtitle{font-size:10px;max-width:240px;line-height:1.5}.eyebrow{font-size:8px}.period-button{height:31px;padding:0 8px;gap:6px;font-size:9px;white-space:nowrap}.metrics-grid{gap:9px}.metric-card{height:115px;padding:11px 10px}.metric-top{gap:6px}.metric-icon{height:23px;width:23px;font-size:15px}.metric-label{font-size:9px}.metric-menu{font-size:14px;padding:0}.metric-value{font-size:17px;margin:13px 0 7px;letter-spacing:-.7px}.metric-footer{font-size:8px;gap:5px;white-space:nowrap}.change-pill{font-size:7px;padding:3px 4px}.text-link{font-size:8px}.pending-detail{font-size:8px}.insights-grid{gap:10px;margin-top:11px}.cashflow-panel,.alerts-panel{padding:14px 12px;height:auto;min-height:251px}.panel-heading h2{font-size:12px}.panel-heading p{font-size:8px}.select-button{font-size:8px;padding:0 6px;gap:6px}.chart-legend{margin-top:12px}.chart-wrap{height:133px;margin-top:9px}.y-labels{width:29px;font-size:7px}.chart-footnote{font-size:7px}.alerts-panel{min-height:252px}.alert-list{margin-top:10px}.alert-item{gap:7px;padding:9px 0}.alert-avatar{width:27px;height:27px}.alert-copy strong{font-size:8px}.alert-copy span,.alert-copy small{font-size:7px}.alert-amount{font-size:8px}.alerts-cta{font-size:8px}.movements-panel{margin-top:11px;padding:14px 12px 0}.movements-heading{margin-bottom:12px}.table-scroll{display:none}.mobile-movements{display:grid}.mobile-movement{padding:10px 0;border-top:1px solid #eff2f5;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px}.mobile-movement-main{display:flex;align-items:center;min-width:0}.mobile-movement-main .movement-name{font-size:9px}.mobile-movement .movement-icon{width:23px;height:23px;margin-right:7px}.mobile-movement-meta{grid-column:1;display:flex;gap:6px;align-items:center;padding-left:30px;color:#93a0ae;font-size:8px}.mobile-movement-meta .category-chip{font-size:7px}.mobile-movement .status-pill{grid-column:1;justify-self:start;margin-left:30px;font-size:7px;padding:3px 5px}.mobile-movement-amount{grid-column:2;grid-row:1/4;align-self:center;font-size:9px}.page-footer{font-size:7px;gap:10px;line-height:1.4}.page-footer span:last-child{text-align:right}}
@media(max-width:380px){.page-content{padding-left:11px;padding-right:11px}.metric-card{padding:10px 8px}.metric-value{font-size:15px}.metric-label{font-size:8px}.metric-top{gap:5px}.period-button{font-size:8px}.welcome-row{align-items:flex-start}.welcome-subtitle{max-width:205px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* Athlete module */
.athlete-nav-count{background:#3c6c90;color:#d8eef8;min-width:20px;text-align:center}.athletes-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:27px 0 20px}.athletes-heading .welcome-subtitle{margin-top:6px}.primary-button,.secondary-button{min-height:38px;border:0;border-radius:7px;padding:0 14px;display:inline-flex;justify-content:center;align-items:center;gap:7px;font-size:10px;font-weight:600;cursor:pointer;transition:background .15s,transform .15s}.primary-button{background:#168fc3;color:#fff;box-shadow:0 3px 8px #168fc32b}.primary-button:hover{background:#117ba9}.primary-button:active,.secondary-button:active{transform:translateY(1px)}.primary-button span{font-size:17px;font-weight:400}.athletes-summary{min-height:67px;display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #eaf0f5;border-radius:9px;padding:12px 15px;margin-bottom:15px;box-shadow:0 3px 9px #253f5906}.athlete-summary-icon{height:37px;width:37px;border-radius:9px;background:#e8f6fb;color:#249ac5;display:grid;place-items:center;font-size:20px}.athletes-summary>div:nth-child(2){display:grid;gap:4px}.athletes-summary strong{font:700 13px Manrope,sans-serif;color:#203b57}.athletes-summary>div:nth-child(2)>span{font-size:9px;color:#8c9bab}.local-only-note{margin-left:auto;display:flex;align-items:center;gap:6px;color:#6e8699;font-size:9px}.local-only-note .demo-dot{width:6px;height:6px}.athlete-list-panel{padding:0 17px 6px}.athlete-toolbar{min-height:67px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #edf1f5}.athlete-search{height:34px;max-width:330px;flex:1;border:1px solid #e5ebf1;border-radius:6px;display:flex;align-items:center;gap:8px;padding:0 10px;color:#7c91a4}.athlete-search>span{font-size:19px;line-height:1}.athlete-search input{border:0;outline:0;min-width:0;width:100%;background:transparent;color:#344e67;font:inherit;font-size:10px}.athlete-search input::placeholder{color:#a0adba}.category-filter{display:flex;align-items:center;gap:8px;color:#8795a4;font-size:9px}.category-filter select{height:34px;min-width:145px;padding:0 9px;border:1px solid #e5ebf1;border-radius:6px;background:#fff;color:#52677d;font:inherit;font-size:9px;cursor:pointer}.results-count{margin-left:auto;color:#8998a7;font-size:9px;white-space:nowrap}.athlete-table{min-width:800px}.athlete-table th{padding:11px 8px;font-size:8px}.athlete-table td{padding:12px 8px;font-size:9px;vertical-align:middle}.athlete-table td:first-child{min-width:185px}.athlete-person{display:flex;align-items:center;gap:9px;min-width:0}.athlete-avatar{width:31px;height:31px;border-radius:9px;background:#e7f3fa;color:#277fa5;display:grid;place-items:center;font-size:9px;font-weight:700;flex:none}.athlete-person>span:last-child{display:grid;gap:4px;min-width:0}.athlete-person strong{font-size:9px;color:#344e67;font-weight:600}.athlete-person small,.birth-date{font-size:8px;color:#9aa7b4}.athlete-category{display:inline-flex;padding:5px 7px;border-radius:5px;background:#edf7fb;color:#4284a1;font-size:8px;font-weight:600}.athlete-document,.guardian-name{display:block;color:#51677c;font-size:9px;font-weight:500}.birth-date{display:block;margin-top:4px}.guardian-name small{color:#919eac;font-weight:400}.guardian-phone{display:inline-block;margin-top:4px;color:#348db2;font-size:8px}.athlete-status{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:5px 7px;font-size:8px;font-weight:600;white-space:nowrap}.athlete-status i{height:5px;width:5px;border-radius:50%;background:currentColor}.status-activo{background:#edf8f2;color:#3f9871}.status-inactivo{background:#f0f2f5;color:#788796}.status-becado{background:#fff5e6;color:#bd8a42}.athlete-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px}.athlete-actions-heading{text-align:right}.row-action{border:1px solid #e5ebf1;background:#fff;border-radius:5px;padding:5px 7px;color:#537189;font-size:8px;cursor:pointer}.row-action:hover{background:#f2f9fc;border-color:#cde8f3;color:#227da3}.delete-athlete{color:#b96c70}.delete-athlete:hover{background:#fff6f6;border-color:#f0dada;color:#b55058}.athlete-cards{display:none}.empty-state{min-height:190px;display:grid;align-content:center;justify-items:center;gap:9px;color:#8b9aaa;text-align:center}.empty-state[hidden]{display:none}.empty-icon{width:35px;height:35px;border-radius:50%;background:#f0f6f9;color:#4f9ab7;display:grid;place-items:center;font-size:21px}.empty-state strong{color:#4d647b;font-size:11px}.empty-state>span:last-child{font-size:9px}.privacy-hint{display:flex;align-items:center;gap:7px;color:#8999a8;font-size:9px;margin:13px 2px}.privacy-hint span{font-size:15px;color:#5288a2}.athlete-dialog{border:0;border-radius:12px;padding:0;width:min(640px,calc(100% - 24px));max-height:min(92dvh,800px);box-shadow:0 25px 70px #102b4e30;color:#17304e}.athlete-dialog::backdrop{background:#102b4e66;backdrop-filter:blur(2px)}.athlete-dialog form{padding:22px 24px 17px;overflow-y:auto}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start}.dialog-heading h2{font:800 19px Manrope,sans-serif;color:#193653;letter-spacing:-.4px}.dialog-close{height:29px;width:29px;border:0;background:#f2f6f9;border-radius:7px;color:#60788c;font-size:20px;line-height:1;cursor:pointer}.dialog-intro{font-size:10px;color:#8493a2;line-height:1.5;margin:9px 0 17px}.form-section-label{font-size:9px;letter-spacing:.55px;font-weight:700;color:#3789ae;padding-bottom:8px;border-bottom:1px solid #edf1f4;margin-bottom:11px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px 13px}.form-grid label{display:grid;gap:5px;color:#60768b;font-size:9px;font-weight:600}.form-grid input,.form-grid select{height:36px;width:100%;border:1px solid #e2e9ef;border-radius:6px;background:#fff;color:#344e67;padding:0 9px;font:inherit;font-size:10px;font-weight:400;outline:0}.form-grid input:focus,.form-grid select:focus,.athlete-search:focus-within{border-color:#73c5e2;box-shadow:0 0 0 3px #55b7de1c}.guardian-section-label{margin-top:19px}.guardian-form-grid{grid-template-columns:1.2fr .9fr 1fr}.form-error{margin:12px 0 0;padding:9px 10px;background:#fff2f1;color:#b64d50;border-radius:6px;font-size:9px}.form-error[hidden]{display:none}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.secondary-button{border:1px solid #e1e8ee;background:#fff;color:#60768b;min-height:36px}.secondary-button:hover{background:#f7f9fb}.dialog-actions .primary-button{min-height:36px}.dialog-privacy{text-align:right;font-size:8px;color:#9ba7b2;margin:10px 0 0}

@media(max-width:700px){.athletes-heading{align-items:flex-start;margin:21px 0 15px}.athletes-heading h1{font-size:19px}.athletes-heading .welcome-subtitle{max-width:235px;line-height:1.45}.athletes-heading .primary-button{height:33px;min-height:33px;padding:0 9px;font-size:8px;white-space:nowrap}.athletes-heading .primary-button span{font-size:14px}.athletes-summary{min-height:59px;padding:10px 11px;margin-bottom:10px}.athlete-summary-icon{width:32px;height:32px}.athletes-summary strong{font-size:11px}.athletes-summary>div:nth-child(2)>span{font-size:8px}.local-only-note{max-width:118px;font-size:7px;line-height:1.4}.athlete-list-panel{padding:0 11px 4px}.athlete-toolbar{min-height:0;padding:11px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.athlete-search{max-width:none;height:34px;grid-column:1/-1}.athlete-search input{font-size:9px}.category-filter{gap:6px;font-size:8px}.category-filter select{min-width:115px;height:31px;font-size:8px}.results-count{font-size:8px}.athlete-table-scroll{display:none}.athlete-cards{display:grid}.athlete-card{padding:12px 1px;border-bottom:1px solid #edf1f4}.athlete-card:last-child{border-bottom:0}.athlete-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.athlete-card-top .athlete-person{gap:8px}.athlete-card-top .athlete-avatar{height:30px;width:30px}.athlete-card-top .athlete-person strong{font-size:9px}.athlete-card-top .athlete-person small{font-size:8px}.athlete-card-top>.athlete-status{font-size:7px;padding:4px 6px}.athlete-card-details{display:grid;grid-template-columns:1fr 1fr;gap:9px 8px;padding:12px 0 10px 38px}.athlete-card-details>span,.athlete-card-guardian>span{display:grid;gap:4px}.athlete-card-details small,.athlete-card-guardian small{color:#93a0ad;font-size:7px}.athlete-card-details strong,.athlete-card-guardian strong{color:#566d82;font-size:8px;font-weight:500}.athlete-card-guardian{display:flex;justify-content:space-between;align-items:center;padding:0 0 9px 38px;gap:8px}.athlete-card-guardian a{color:#348db2;font-size:8px;white-space:nowrap}.athlete-card .athlete-actions{justify-content:flex-end}.row-action{padding:6px 9px;font-size:8px}.empty-state{min-height:165px}.athlete-dialog{max-height:90dvh}.athlete-dialog form{padding:18px 16px 14px}.dialog-heading h2{font-size:17px}.dialog-intro{font-size:9px}.form-grid{gap:10px 9px}.form-grid label{font-size:8px}.form-grid input,.form-grid select{height:35px;font-size:9px;padding:0 7px}.guardian-form-grid{grid-template-columns:1fr 1fr}.guardian-form-grid label:first-child{grid-column:1/-1}.dialog-actions{margin-top:15px}.dialog-privacy{font-size:7px}}
@media(max-width:380px){.athletes-heading{gap:5px}.athletes-heading .welcome-subtitle{max-width:170px}.athletes-heading .primary-button{padding:0 7px;font-size:7px}.local-only-note{max-width:94px}.category-filter select{min-width:104px}.athlete-dialog form{padding-left:13px;padding-right:13px}}

/* Payments module */
.cloud-load-status{margin:0 0 12px;padding:10px 12px;border:1px solid #dcebf1;border-radius:7px;background:#f4fafc;color:#486e83;font-size:9px;line-height:1.5}.cloud-load-status[data-state="loading"]{background:#f3f7fb;color:#56748c}.cloud-load-status[data-state="error"]{border-color:#f0d8d7;background:#fff5f4;color:#a54f4d}.cloud-load-status[data-state="success"]{border-color:#d9eee3;background:#f2faf5;color:#417958}.payment-provenance-tag{display:block;margin-top:4px;color:#9a713d;font-size:7px;line-height:1.25}.payment-status.status-sin-cargo{background:#f0f3f6;color:#718090}.payment-status.status-sobrepagado{background:#fff0ef;color:#bb514d}.payments-cloud-banner{margin-bottom:12px}
.payments-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:27px 0 18px}.payments-heading .welcome-subtitle{margin-top:6px}.payment-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:15px}.payment-summary-card{min-height:83px;background:#fff;border:1px solid #eaf0f5;border-radius:9px;padding:13px 15px;display:flex;align-items:center;gap:11px;box-shadow:0 3px 9px #253f5906}.payment-summary-icon{height:34px;width:34px;border-radius:9px;display:grid;place-items:center;font-size:17px;flex:none}.due-icon{background:#edf5fc;color:#3986b1}.received-icon{background:#e8f7f0;color:#4b9c77}.balance-icon{background:#fff5e7;color:#cb984d}.payment-summary-card>div:last-child{display:grid;gap:4px;min-width:0}.payment-summary-card span{font-size:9px;color:#8594a3}.payment-summary-card strong{font:800 17px Manrope,sans-serif;letter-spacing:-.3px;color:#203b57}.payment-summary-card small{font-size:8px;color:#a0acb8}.payments-list-panel{padding:0 16px 6px}.payment-toolbar{min-height:66px;display:flex;align-items:center;gap:11px;border-bottom:1px solid #edf1f5}.payment-search{height:34px;max-width:300px;flex:1;border:1px solid #e5ebf1;border-radius:6px;display:flex;align-items:center;gap:8px;padding:0 10px;color:#7c91a4}.payment-search>span{font-size:19px;line-height:1}.payment-search input{border:0;outline:0;min-width:0;width:100%;background:transparent;color:#344e67;font:inherit;font-size:10px}.payment-search input::placeholder{color:#a0adba}.payment-month-filter,.payment-status-filter{display:flex;align-items:center;gap:7px;color:#8795a4;font-size:9px;white-space:nowrap}.payment-month-filter input,.payment-status-filter select{height:34px;min-width:130px;padding:0 8px;border:1px solid #e5ebf1;border-radius:6px;background:#fff;color:#52677d;font:inherit;font-size:9px}.payment-status-filter select{min-width:105px;cursor:pointer}.payment-results-count{margin-left:auto;color:#8998a7;font-size:9px;white-space:nowrap}.payment-table{min-width:820px}.payment-table th{padding:11px 8px;font-size:8px}.payment-table td{padding:12px 8px;font-size:9px;vertical-align:middle}.payment-athlete-person{display:flex;align-items:center;gap:9px;min-width:0}.payment-athlete-person>span:last-child{display:grid;gap:4px;min-width:0}.payment-athlete-person strong{font-size:9px;color:#344e67;font-weight:600}.payment-athlete-person small{font-size:8px;color:#95a2af}.payment-value{white-space:nowrap;color:#536a80;font-size:9px!important;font-weight:600}.received-value{color:#318a68!important}.balance-value{color:#bd8741!important}.payment-status{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:5px 7px;font-size:8px;font-weight:600;white-space:nowrap}.payment-status i{height:5px;width:5px;border-radius:50%;background:currentColor}.payment-status.status-pagado{background:#edf8f2;color:#409573}.payment-status.status-parcial{background:#fff5e6;color:#bc8a43}.payment-status.status-pendiente{background:#fff0ef;color:#bb6966}.payment-actions{display:flex;justify-content:flex-end;gap:5px;white-space:nowrap}.payment-actions-heading{text-align:right}.payment-actions .row-action{font-size:8px}.payment-actions .row-action:disabled{background:#f3f8f5;border-color:#e1eee6;color:#68a084;cursor:default}.payment-cards{display:none}.payment-form-field{display:grid;gap:5px;color:#60768b;font-size:9px;font-weight:600;margin:4px 0 12px}.payment-form-field select{height:36px;width:100%;border:1px solid #e2e9ef;border-radius:6px;background:#fff;color:#344e67;padding:0 9px;font:inherit;font-size:10px;font-weight:400;outline:0}.payment-form-grid label{min-width:0}.payment-form-grid input[type=month]{min-width:0}.payment-form-field select:focus,.payment-form-grid input:focus,.payment-form-grid select:focus{border-color:#73c5e2;box-shadow:0 0 0 3px #55b7de1c}.payment-balance-hint{margin:11px 0 0;padding:9px 10px;background:#eef8fc;border-radius:6px;color:#397e9c;font-size:9px}.payment-dialog,.payment-history-dialog{border:0;border-radius:12px;padding:0;width:min(560px,calc(100% - 24px));max-height:min(92dvh,780px);box-shadow:0 25px 70px #102b4e30;color:#17304e}.payment-dialog::backdrop,.payment-history-dialog::backdrop{background:#102b4e66;backdrop-filter:blur(2px)}.payment-dialog form,.history-dialog-content{padding:22px 24px 17px;overflow-y:auto}.payment-history-dialog{width:min(600px,calc(100% - 24px))}.history-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:17px 0 12px}.history-summary>span{display:grid;gap:5px;padding:11px 12px;border:1px solid #eaf0f5;border-radius:7px;background:#fbfdff}.history-summary small{font-size:8px;color:#8493a2}.history-summary strong{font:700 14px Manrope,sans-serif;color:#203b57}.payment-history-list{max-height:43dvh;overflow-y:auto}.payment-history-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 2px;border-bottom:1px solid #edf1f4}.payment-history-main,.payment-history-amount{display:grid;gap:4px}.payment-history-main strong,.payment-history-amount strong{color:#405b73;font-size:9px;font-weight:600}.payment-history-main small,.payment-history-amount small{font-size:8px;color:#8b9aa8}.payment-history-amount{text-align:right}.history-empty{padding:23px 10px;text-align:center;color:#8493a2;font-size:10px}.payment-dialog .dialog-privacy,.payment-history-dialog .dialog-privacy{margin-top:10px}.row-action:disabled{opacity:1}

@media(max-width:1100px){.payment-toolbar{flex-wrap:wrap;padding:11px 0}.payment-search{max-width:none;flex-basis:100%}.payment-results-count{margin-left:auto}}
@media(max-width:700px){.payments-heading{align-items:flex-start;margin:21px 0 15px;gap:7px}.payments-heading h1{font-size:19px}.payments-heading .welcome-subtitle{max-width:240px;line-height:1.45}.payments-heading .primary-button{height:33px;min-height:33px;padding:0 8px;font-size:8px;white-space:nowrap}.payments-heading .primary-button span{font-size:14px}.payment-summary-grid{gap:7px;margin-bottom:10px}.payment-summary-card{min-height:75px;padding:9px 7px;gap:6px;align-items:flex-start}.payment-summary-icon{width:25px;height:25px;border-radius:7px;font-size:13px}.payment-summary-card span{font-size:7px;line-height:1.3}.payment-summary-card strong{font-size:12px;letter-spacing:-.45px}.payment-summary-card small{font-size:7px;line-height:1.3}.payments-list-panel{padding:0 11px 4px}.payment-toolbar{min-height:0;padding:10px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.payment-search{height:33px;grid-column:1/-1}.payment-search input{font-size:9px}.payment-month-filter,.payment-status-filter{display:grid;gap:4px;font-size:7px}.payment-month-filter input,.payment-status-filter select{height:31px;min-width:0;width:100%;font-size:8px;padding:0 6px}.payment-results-count{grid-column:1/-1;justify-self:end;font-size:7px}.payment-table-scroll{display:none}.payment-cards{display:grid}.payment-card{padding:12px 1px;border-bottom:1px solid #edf1f4}.payment-card:last-child{border-bottom:0}.payment-card-heading{display:flex;justify-content:space-between;align-items:center;gap:7px}.payment-card-heading .payment-athlete-person{gap:7px}.payment-card-heading .athlete-avatar{width:29px;height:29px}.payment-card-heading .payment-athlete-person strong{font-size:8px}.payment-card-heading .payment-athlete-person small{font-size:7px}.payment-card-heading .payment-status{font-size:7px;padding:4px 5px}.payment-card-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:12px 0 10px;padding-left:36px}.payment-card-values>span{display:grid;gap:4px}.payment-card-values small{font-size:7px;color:#909eab}.payment-card-values strong{font-size:8px;color:#52697e;white-space:nowrap}.payment-card .payment-actions{justify-content:flex-end}.payment-actions .row-action{padding:6px 8px;font-size:7px}.payment-dialog form,.history-dialog-content{padding:18px 16px 14px}.payment-dialog .dialog-heading h2,.payment-history-dialog .dialog-heading h2{font-size:17px}.payment-dialog .dialog-intro{font-size:9px}.payment-form-grid{grid-template-columns:1fr 1fr;gap:10px 9px}.payment-form-grid label{font-size:8px}.payment-form-grid input,.payment-form-grid select,.payment-form-field select{height:35px;font-size:9px;padding:0 7px}.payment-form-field{font-size:8px}.payment-balance-hint{font-size:8px}.payment-history-item{align-items:flex-start;padding:10px 0}.payment-history-amount small{max-width:145px;line-height:1.4}.history-summary{margin-top:13px}.history-summary>span{padding:9px}.history-summary strong{font-size:12px}.history-summary small{font-size:7px}.payment-history-list{max-height:42dvh}}
@media(max-width:380px){.payments-heading .welcome-subtitle{max-width:170px}.payments-heading .primary-button{padding:0 6px;font-size:7px}.payment-summary-card{padding-left:5px;padding-right:5px}.payment-summary-card strong{font-size:11px}.payment-card-values{padding-left:34px}.payment-card-values strong{font-size:7px}.payment-dialog form,.history-dialog-content{padding-left:13px;padding-right:13px}}

/* Expenses module */
.expenses-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:25px 0 15px}.expenses-heading .welcome-subtitle{margin-top:6px}.annual-info{display:flex;align-items:center;gap:11px;padding:11px 13px;background:#f0f8fc;border:1px solid #dceef5;border-radius:8px;margin-bottom:14px}.annual-info-icon{height:31px;width:31px;border-radius:8px;background:#ddf0f7;color:#3189ac;display:grid;place-items:center;flex:none}.annual-info>div{display:grid;gap:4px;min-width:0}.annual-info strong{font-size:9px;color:#337a99}.annual-info>div>span{font-size:8px;color:#71899b;line-height:1.4}.annual-info-tag{margin-left:auto;padding:4px 7px;border-radius:4px;background:#deeff6;color:#367f9b;font-size:7px;font-weight:700;letter-spacing:.5px}.expense-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:14px}.expense-summary-card{min-height:78px;background:#fff;border:1px solid #eaf0f5;border-radius:9px;padding:12px 14px;display:flex;align-items:center;gap:10px;box-shadow:0 3px 9px #253f5906}.expense-summary-icon{height:32px;width:32px;border-radius:8px;display:grid;place-items:center;font-size:16px;flex:none}.year-icon{background:#fff0e8;color:#d88b5e}.month-icon{background:#edf5fc;color:#3987b2}.league-icon{background:#eef6ef;color:#6a9b73}.expense-summary-card>div:last-child{display:grid;gap:4px;min-width:0}.expense-summary-card span{font-size:9px;color:#8594a3}.expense-summary-card strong{font:800 16px Manrope,sans-serif;color:#203b57;letter-spacing:-.2px}.expense-summary-card small{font-size:8px;color:#99a6b2}.expenses-list-panel{padding:0 16px 6px}.expense-toolbar{min-height:65px;display:flex;align-items:center;gap:9px;border-bottom:1px solid #edf1f5}.expense-search{height:34px;max-width:280px;flex:1;border:1px solid #e5ebf1;border-radius:6px;display:flex;align-items:center;gap:7px;padding:0 9px;color:#7c91a4}.expense-search>span{font-size:19px;line-height:1}.expense-search input{border:0;outline:0;min-width:0;width:100%;background:transparent;color:#344e67;font:inherit;font-size:9px}.expense-search input::placeholder{color:#a0adba}.expense-filter{display:flex;align-items:center;gap:6px;color:#8795a4;font-size:8px;white-space:nowrap}.expense-filter select{height:33px;min-width:94px;padding:0 7px;border:1px solid #e5ebf1;border-radius:6px;background:#fff;color:#52677d;font:inherit;font-size:8px;cursor:pointer}.expense-filter:nth-of-type(3) select{min-width:118px}.category-expense-filter select{min-width:145px}.expense-results-count{margin-left:auto;color:#8998a7;font-size:8px;white-space:nowrap}.expense-table{min-width:920px}.expense-table th{padding:11px 8px;font-size:8px}.expense-table td{padding:11px 8px;font-size:9px;vertical-align:middle}.expense-table td:first-child{min-width:90px}.expense-category-chip{display:inline-flex;padding:5px 7px;border-radius:5px;background:#eef5f8;color:#577b91;font-size:8px;line-height:1.25}.annual-tag{display:block;margin-top:4px;color:#458263;font-size:7px;font-weight:700;letter-spacing:.35px}.expense-description{display:block;color:#405970;font-size:9px;font-weight:600;line-height:1.35}.expense-observations{display:block;max-width:300px;margin-top:4px;color:#94a1ae;font-size:8px;line-height:1.4;white-space:normal}.expense-amount{color:#556c81;font-weight:700;white-space:nowrap}.expense-amount-heading,.expense-actions-heading{text-align:right}.expense-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;white-space:nowrap}.expense-actions .row-action{font-size:8px}.delete-expense{color:#b96c70}.delete-expense:hover{background:#fff6f6;border-color:#f0dada;color:#b55058}.expense-cards{display:none}.expense-dialog{border:0;border-radius:12px;padding:0;width:min(600px,calc(100% - 24px));max-height:min(92dvh,800px);box-shadow:0 25px 70px #102b4e30;color:#17304e}.expense-dialog::backdrop{background:#102b4e66;backdrop-filter:blur(2px)}.expense-dialog form{padding:22px 24px 17px;overflow-y:auto}.expense-dialog .dialog-heading h2{font:800 19px Manrope,sans-serif;color:#193653;letter-spacing:-.4px}.expense-form-grid{gap:11px 13px}.expense-form-grid label{display:grid;gap:5px;color:#60768b;font-size:9px;font-weight:600;min-width:0}.expense-form-grid input,.expense-form-grid select,.expense-form-grid textarea{width:100%;border:1px solid #e2e9ef;border-radius:6px;background:#fff;color:#344e67;padding:0 9px;font:inherit;font-size:10px;font-weight:400;outline:0}.expense-form-grid input,.expense-form-grid select{height:36px}.expense-form-grid textarea{padding:9px;resize:vertical;min-height:65px}.expense-form-grid input:focus,.expense-form-grid select:focus,.expense-form-grid textarea:focus{border-color:#73c5e2;box-shadow:0 0 0 3px #55b7de1c}.expense-description-field,.expense-observations-field{grid-column:1/-1}.expense-annual-hint{margin:12px 0 0;padding:9px 10px;background:#f0f8fc;border-radius:6px;color:#477e94;font-size:8px;line-height:1.45}

@media(max-width:1100px){.expense-toolbar{flex-wrap:wrap;padding:10px 0}.expense-search{max-width:none;flex-basis:100%}.expense-results-count{margin-left:auto}}
@media(max-width:700px){.expenses-heading{align-items:flex-start;margin:21px 0 13px;gap:7px}.expenses-heading h1{font-size:19px}.expenses-heading .welcome-subtitle{max-width:230px;line-height:1.45}.expenses-heading .primary-button{height:33px;min-height:33px;padding:0 8px;font-size:8px;white-space:nowrap}.expenses-heading .primary-button span{font-size:14px}.annual-info{align-items:flex-start;gap:8px;padding:9px;margin-bottom:10px}.annual-info-icon{height:27px;width:27px;font-size:13px}.annual-info strong{font-size:8px;line-height:1.4}.annual-info>div>span{font-size:7px;line-height:1.45}.annual-info-tag{font-size:6px;padding:4px 5px}.expense-summary-grid{gap:7px;margin-bottom:10px}.expense-summary-card{min-height:72px;padding:8px 6px;align-items:flex-start;gap:6px}.expense-summary-icon{height:25px;width:25px;font-size:12px}.expense-summary-card span{font-size:7px;line-height:1.3}.expense-summary-card strong{font-size:11px;letter-spacing:-.4px}.expense-summary-card small{font-size:6px;line-height:1.35}.expenses-list-panel{padding:0 11px 4px}.expense-toolbar{min-height:0;padding:10px 0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.expense-search{height:33px;grid-column:1/-1}.expense-search input{font-size:9px}.expense-filter{display:grid;gap:4px;font-size:7px}.expense-filter select,.expense-filter:nth-of-type(3) select,.category-expense-filter select{height:31px;min-width:0;width:100%;font-size:8px;padding:0 5px}.category-expense-filter{grid-column:1/-1}.expense-results-count{grid-column:1/-1;justify-self:end;font-size:7px}.expense-table-scroll{display:none}.expense-cards{display:grid}.expense-card{padding:11px 1px;border-bottom:1px solid #edf1f4}.expense-card:last-child{border-bottom:0}.expense-card-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.expense-card-top .expense-category-chip{font-size:7px;padding:4px 5px}.expense-card-top .annual-tag{display:inline-block;margin:0;font-size:6px}.expense-card-top .expense-amount{margin-left:auto;font-size:9px}.expense-card-description{display:block;margin:8px 0 6px;color:#405970;font-size:9px;line-height:1.4}.expense-card-meta{display:flex;align-items:center;gap:8px;color:#8494a3;font-size:7px}.expense-card .expense-observations{max-width:none;font-size:7px}.expense-card .expense-actions{margin-top:8px}.expense-actions .row-action{padding:6px 8px;font-size:7px}.expense-dialog form{padding:18px 16px 14px}.expense-dialog .dialog-heading h2{font-size:17px}.expense-dialog .dialog-intro{font-size:9px}.expense-form-grid{gap:10px 9px}.expense-form-grid label{font-size:8px}.expense-form-grid input,.expense-form-grid select{height:35px;font-size:9px;padding:0 7px}.expense-form-grid textarea{font-size:9px;padding:8px}.expense-annual-hint{font-size:7px}.expense-dialog .dialog-actions{margin-top:15px}}
@media(max-width:380px){.expenses-heading .welcome-subtitle{max-width:160px}.expenses-heading .primary-button{padding:0 6px;font-size:7px}.expense-summary-card{padding-left:5px;padding-right:5px}.expense-summary-card strong{font-size:10px}.expense-summary-icon{height:22px;width:22px}.expense-dialog form{padding-left:13px;padding-right:13px}}

/* Tournament module: projections and recorded cash remain distinct. */
.tournaments-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:25px 0 18px}.tournaments-heading .welcome-subtitle{margin-top:6px}.tournament-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tournament-card{background:#fff;border:1px solid #e8eff5;border-radius:11px;padding:18px;box-shadow:0 4px 14px #253f5908}.tournament-card-top{display:flex;align-items:center;gap:8px}.tournament-card-icon{height:33px;width:33px;border-radius:9px;background:#e9f6fb;color:#3288aa;display:grid;place-items:center}.tournament-card-label{font-size:7px;letter-spacing:.7px;color:#6992a5;font-weight:700}.tournament-card h2{margin:14px 0 5px;font:800 16px Manrope,sans-serif;color:#203b57}.tournament-card>p{margin:0;color:#72869a;font-size:9px}.tournament-card-dates{margin-top:8px;color:#94a2ae;font-size:8px}.tournament-card-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:16px 0;padding:12px 0;border-top:1px solid #edf1f4;border-bottom:1px solid #edf1f4}.tournament-card-stats span{display:grid;gap:5px;min-width:0}.tournament-card-stats small{font-size:7px;color:#8796a4}.tournament-card-stats strong{font-size:10px;color:#344f67;overflow-wrap:anywhere}.tournament-card .primary-button{height:34px;min-height:34px;padding:0 11px;font-size:9px}.tournament-detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin:15px 0}.tournament-detail-heading h2{font:800 19px Manrope,sans-serif;color:#193653;margin:4px 0}.tournament-detail-heading p{color:#7890a3;font-size:9px;margin:0}.tournament-back{border:0;background:transparent;padding:6px 0;color:#398caf;font:600 9px inherit;cursor:pointer}.tournament-finance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.tournament-stat{min-width:0;padding:13px 14px;border:1px solid #e9eff4;border-radius:9px;background:#fff;display:grid;gap:7px;box-shadow:0 3px 9px #253f5906}.tournament-stat>span{font-size:8px;color:#7e8fa0;line-height:1.4}.tournament-stat strong{font:800 16px Manrope,sans-serif;color:#203b57;overflow-wrap:anywhere}.tournament-stat small{font-size:7px;color:#9aa6b1;line-height:1.4}.tournament-stat.projected{border-top:3px solid #48a0c5}.tournament-stat.received{border-top:3px solid #58a17c}.tournament-stat.due{border-top:3px solid #d5a14c}.tournament-stat.organizer{border-top:3px solid #778aaa}.tournament-result-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 16px;padding:12px 14px;background:#eef7fb;border:1px solid #dfedf4;border-radius:8px}.tournament-result-strip span{display:grid;gap:5px}.tournament-result-strip small{color:#71889a;font-size:7px;line-height:1.4}.tournament-result-strip strong{color:#264b65;font-size:10px}.tournament-roster-panel,.organizer-panel{padding:0 15px 6px;margin-bottom:13px}.tournament-roster-panel .panel-heading,.organizer-panel .panel-heading{min-height:65px}.tournament-roster-panel .panel-heading h2,.organizer-panel .panel-heading h2{font-size:12px}.tournament-roster-panel .panel-heading p,.organizer-panel .panel-heading p{font-size:8px}.tournament-roster-panel .secondary-button,.organizer-panel .secondary-button{min-height:31px;padding:0 9px;font-size:8px}.tournament-toolbar{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #edf1f5}.tournament-search{height:33px;max-width:310px;flex:1;display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid #e5ebf1;border-radius:6px;color:#7c91a4}.tournament-search>span{font-size:18px}.tournament-search input{min-width:0;width:100%;border:0;outline:0;font:inherit;font-size:9px;color:#344e67}.tournament-roster-count{margin-left:auto;color:#8998a7;font-size:8px}.tournament-table{min-width:850px}.tournament-table th{padding:10px 8px;font-size:7px}.tournament-table td{padding:11px 8px;font-size:8px;vertical-align:middle}.tournament-person{display:grid;gap:4px}.tournament-person strong{font-size:8px;color:#344e67}.tournament-person small{font-size:7px;color:#95a2af}.tournament-good{color:#348a68!important;font-weight:700;white-space:nowrap}.tournament-warn{color:#b78439!important;font-weight:700;white-space:nowrap}.tournament-status{display:inline-flex;padding:4px 6px;border-radius:20px;font-size:7px;white-space:nowrap}.tournament-status.complete{background:#edf8f2;color:#409573}.tournament-status.partial{background:#fff5e6;color:#bc8a43}.tournament-status.pending{background:#fff0ef;color:#bb6966}.tournament-actions{display:flex;justify-content:flex-end;gap:5px;white-space:nowrap}.tournament-actions .row-action{font-size:7px;padding:6px}.tournament-actions .row-action:disabled{opacity:.55;cursor:default}.tournament-roster-cards{display:none}.organizer-payment-list{padding:0 0 8px}.organizer-payment-item{display:flex;justify-content:space-between;align-items:center;padding:9px 2px;border-bottom:1px solid #edf1f4}.organizer-payment-item>span:first-child{display:grid;gap:4px}.organizer-payment-item strong{color:#405b73;font-size:9px}.organizer-payment-item small{color:#8b9aa8;font-size:8px}.tournament-dialog{border:0;border-radius:12px;padding:0;width:min(570px,calc(100% - 24px));max-height:min(92dvh,790px);box-shadow:0 25px 70px #102b4e30;color:#17304e}.tournament-dialog::backdrop{background:#102b4e66;backdrop-filter:blur(2px)}.tournament-dialog form{padding:22px 24px 17px;overflow-y:auto}.tournament-dialog .dialog-heading h2{font:800 19px Manrope,sans-serif;color:#193653;letter-spacing:-.4px}.tournament-form-grid{gap:11px 13px}.tournament-form-grid label{display:grid;gap:5px;color:#60768b;font-size:9px;font-weight:600;min-width:0}.tournament-form-grid input,.tournament-form-grid select{height:36px;width:100%;border:1px solid #e2e9ef;border-radius:6px;background:#fff;color:#344e67;padding:0 9px;font:inherit;font-size:10px;font-weight:400;outline:0}.tournament-form-grid input:focus,.tournament-form-grid select:focus{border-color:#73c5e2;box-shadow:0 0 0 3px #55b7de1c}.full-field{grid-column:1/-1}.category-field{border:1px solid #e2e9ef;border-radius:6px;padding:9px}.category-field legend{padding:0 5px;color:#60768b;font-size:9px;font-weight:600}.category-checks{display:flex;flex-wrap:wrap;gap:9px}.category-checks label{display:flex;align-items:center;gap:4px;font-size:8px}.category-checks input{width:13px;height:13px}.tournament-inline-hint{padding:10px;background:#eef8fc;border-radius:6px;color:#397e9c;font-size:9px;line-height:1.45}.tournament-dialog .dialog-privacy{margin-top:10px}
@media(max-width:900px){.tournament-finance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tournament-cards{grid-template-columns:1fr}}
@media(max-width:700px){.tournaments-heading{align-items:flex-start;margin:21px 0 14px;gap:7px}.tournaments-heading h1{font-size:19px}.tournaments-heading .welcome-subtitle{max-width:230px;line-height:1.45}.tournaments-heading .primary-button{height:33px;min-height:33px;padding:0 8px;font-size:8px;white-space:nowrap}.tournaments-heading .primary-button span{font-size:14px}.tournament-card{padding:13px}.tournament-card h2{font-size:13px}.tournament-card-stats{margin:12px 0;padding:9px 0}.tournament-card-stats strong{font-size:8px}.tournament-detail-heading h2{font-size:16px}.tournament-detail-heading .demo-badge{font-size:6px}.tournament-finance-grid{gap:7px}.tournament-stat{padding:9px 7px;gap:5px}.tournament-stat>span{font-size:7px}.tournament-stat strong{font-size:12px}.tournament-stat small{font-size:6px}.tournament-result-strip{grid-template-columns:1fr;gap:8px;padding:10px}.tournament-result-strip span{grid-template-columns:1fr auto;align-items:center}.tournament-result-strip small{font-size:7px}.tournament-result-strip strong{font-size:8px;text-align:right}.tournament-roster-panel,.organizer-panel{padding:0 10px 4px}.tournament-roster-panel .panel-heading,.organizer-panel .panel-heading{min-height:58px;gap:5px}.tournament-roster-panel .panel-heading h2,.organizer-panel .panel-heading h2{font-size:10px}.tournament-roster-panel .panel-heading p,.organizer-panel .panel-heading p{max-width:205px;font-size:7px;line-height:1.4}.tournament-roster-panel .secondary-button,.organizer-panel .secondary-button{min-height:29px;padding:0 6px;font-size:7px;white-space:nowrap}.tournament-toolbar{padding:8px 0}.tournament-search{height:31px}.tournament-search input{font-size:8px}.tournament-roster-count{font-size:7px}.tournament-table-scroll{display:none}.tournament-roster-cards{display:grid}.tournament-roster-card{padding:11px 1px;border-bottom:1px solid #edf1f4}.tournament-roster-card:last-child{border:0}.tournament-roster-card-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.tournament-roster-card-head>span:first-child{display:grid;gap:4px}.tournament-roster-card-head strong{font-size:8px;color:#344e67}.tournament-roster-card-head small{font-size:7px;color:#95a2af}.tournament-roster-card-values{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:10px 0;padding-left:5px}.tournament-roster-card-values span{display:grid;gap:4px}.tournament-roster-card-values small{font-size:7px;color:#909eab}.tournament-roster-card-values strong{font-size:8px;color:#52697e}.tournament-actions .row-action{padding:6px 8px;font-size:7px}.tournament-dialog form{padding:18px 16px 14px}.tournament-dialog .dialog-heading h2{font-size:17px}.tournament-form-grid{gap:10px 9px}.tournament-form-grid label,.category-field legend{font-size:8px}.tournament-form-grid input,.tournament-form-grid select{height:35px;font-size:9px;padding:0 7px}.category-checks{gap:8px}.category-checks label{font-size:7px}.tournament-inline-hint{font-size:8px}}
@media(max-width:380px){.tournaments-heading .welcome-subtitle{max-width:155px}.tournaments-heading .primary-button{padding:0 6px;font-size:7px}.tournament-finance-grid{gap:5px}.tournament-stat{padding:8px 5px}.tournament-stat strong{font-size:11px}.tournament-result-strip{padding:8px}.tournament-dialog form{padding-left:13px;padding-right:13px}}
.tournament-card-actions,.tournament-panel-actions{display:flex;flex-wrap:wrap;gap:7px}.tournament-card-actions>*{flex:1 1 auto}.tournament-card-actions .primary-button{width:100%}.tournament-card-actions .secondary-button,.tournament-panel-actions .secondary-button{min-height:34px;padding:0 11px;font-size:9px}.tournament-panel-actions{justify-content:flex-end}.tournament-panel-actions .secondary-button{white-space:nowrap}
@media(max-width:700px){.tournament-card-actions{display:grid;grid-template-columns:1fr}.tournament-panel-actions{width:100%;justify-content:flex-start}.tournament-panel-actions .secondary-button{flex:1;padding:0 7px;font-size:7px;min-height:30px}.tournament-rates-panel .panel-heading{flex-wrap:wrap}}
.tournament-back{font-family:inherit;font-size:9px;font-weight:600}.family-total{display:block;margin-top:3px;color:#71889a;font-size:7px;font-weight:500;white-space:nowrap}
.tournament-rates-panel,.tournament-category-panel{padding:0 15px 10px;margin-bottom:13px}.tournament-rates-panel .panel-heading,.tournament-category-panel .panel-heading{min-height:60px}.tournament-rates-panel .panel-heading h2,.tournament-category-panel .panel-heading h2{font-size:11px}.tournament-rates-panel .panel-heading p,.tournament-category-panel .panel-heading p{font-size:8px}.tournament-rate-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:8px}.tournament-rate-item{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:9px;background:#f8fbfd;border:1px solid #edf1f5;border-radius:7px;color:#8092a2;font-size:7px}.tournament-rate-item>strong{grid-column:1/-1;color:#31516b;font-size:9px}.tournament-rate-item b{display:block;margin-top:3px;color:#3c5d76;font-size:8px}.tournament-category-summary{display:grid;gap:6px}.tournament-category-row{display:grid;grid-template-columns:.7fr .7fr 1fr 1fr 1.3fr 1.2fr;gap:8px;align-items:center;padding:8px 9px;border:1px solid #edf1f5;border-radius:6px;color:#71869a;font-size:7px}.tournament-category-row:first-child{background:#f4f9fc}.tournament-category-row>strong{color:#34546d;font-size:8px}.tournament-category-row span{line-height:1.35}.tournament-roster-panel .tournament-toolbar{flex-wrap:wrap}.tournament-category-filter{display:flex;align-items:center;gap:6px;color:#8795a4;font-size:8px}.tournament-category-filter select{height:33px;min-width:100px;padding:0 7px;border:1px solid #e5ebf1;border-radius:6px;background:#fff;color:#52677d;font:inherit;font-size:8px}.tournament-table{min-width:1060px}.tournament-table td{white-space:nowrap}.tournament-table td:nth-child(2){white-space:normal;min-width:130px}.tournament-table td small{display:block;margin-top:4px;color:#8496a6;font-size:7px}.participation-control{display:inline-flex;align-items:center;gap:5px;color:#688094;font-size:7px;white-space:nowrap;cursor:pointer}.participation-control input{height:15px;width:15px;margin:0;accent-color:#258fba;cursor:pointer}.participation-control input:disabled{cursor:not-allowed;opacity:.45}.participation-control:has(input:checked){color:#328b70;font-weight:700}.participation-locked{color:#9b8154;font-size:7px}.inactive-tag,.exception-tag{display:block;margin-top:3px;color:#a47c4b;font-size:6px;font-weight:700}.exception-tag{color:#398caf}.no-participation{color:#a1abb5;font-size:7px}.tournament-category-filter{white-space:nowrap}.category-rate-config{display:grid;gap:8px;margin-top:7px}.category-rate-row{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;gap:9px;border:1px solid #e8eef3;border-radius:7px;padding:9px}.category-rate-row legend{padding:0 4px;color:#31516b;font-size:9px;font-weight:700}.category-rate-row label{display:grid;gap:4px;color:#71869a;font-size:8px}.category-rate-row input{height:32px;min-width:0;padding:0 7px;border:1px solid #dfe8ef;border-radius:5px;color:#344e67;font:inherit;font-size:9px}.category-rate-row output{padding-bottom:9px;color:#398a69;font-size:8px;font-weight:700}.category-rate-empty{margin:0;color:#8495a5;font-size:8px}
@media(max-width:900px){.tournament-category-row{grid-template-columns:1fr 1fr 1fr}.tournament-category-row>strong{grid-column:auto}}
@media(max-width:700px){.tournament-rates-panel,.tournament-category-panel{padding:0 10px 8px}.tournament-rates-panel .panel-heading,.tournament-category-panel .panel-heading{min-height:55px}.tournament-rates-panel .panel-heading h2,.tournament-category-panel .panel-heading h2{font-size:9px}.tournament-rates-panel .panel-heading p,.tournament-category-panel .panel-heading p{font-size:6px}.tournament-rate-summary{grid-template-columns:1fr 1fr;gap:5px}.tournament-rate-item{padding:7px;gap:5px;font-size:6px}.tournament-rate-item>strong{font-size:8px}.tournament-rate-item b{font-size:7px}.tournament-category-row{grid-template-columns:1fr 1fr;gap:5px;padding:7px;font-size:6px}.tournament-category-row>strong{grid-column:1/-1}.tournament-category-filter{grid-column:1/-1;display:grid;gap:4px;font-size:7px}.tournament-category-filter select{width:100%;height:31px;font-size:8px}.tournament-roster-panel .tournament-toolbar{display:grid;grid-template-columns:1fr auto;gap:7px}.tournament-roster-panel .tournament-search{grid-column:1/-1;max-width:none}.tournament-roster-panel .tournament-roster-count{justify-self:end}.tournament-roster-card{padding:12px 1px}.tournament-roster-card-head{justify-content:space-between}.tournament-roster-card-head .participation-control{font-size:8px}.roster-card-name{display:block;margin-top:8px;color:#344e67;font-size:9px}.roster-card-family{display:block;margin-top:3px;color:#8496a6;font-size:7px}.tournament-roster-card-values{grid-template-columns:repeat(3,minmax(0,1fr));margin:9px 0}.tournament-roster-card-values strong{font-size:7px}.card-payment-summary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px;margin:8px 0;color:#71869a;font-size:7px}.tournament-roster-card .tournament-actions{justify-content:flex-end}.category-rate-row{grid-template-columns:1fr 1fr;gap:7px;padding:7px}.category-rate-row legend{font-size:8px}.category-rate-row label{font-size:7px}.category-rate-row input{height:32px;font-size:8px}.category-rate-row output{grid-column:1/-1;padding-bottom:0;font-size:7px}}

.tournament-payment-cell{display:grid;justify-items:start;gap:4px}.tournament-payment-cell strong{font-size:8px}.tournament-payment-cell small{display:block;color:#8293a1;font-size:7px;line-height:1.4}.tournament-due{color:#b75d57;font-weight:700;white-space:nowrap}.tournament-status.scholarship{background:#edf5ff;color:#3d6e9e}.tournament-status.not-enrolled,.tournament-status.unpriced{background:#f0f3f6;color:#718090}
/* Acciones visibles para confirmar movimientos cloud de forma explícita y auditable. */
.financial-confirm-actions { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: .55rem; }
.financial-confirm-audit, .financial-confirm-note { display: block; margin-top: .35rem; color: #52647b; font-size: .78rem; line-height: 1.4; overflow-wrap: anywhere; }
.cloud-financial-confirm { min-height: 2.25rem; font-size: .82rem; }
#dashboard-demo-banner[hidden], #dashboard-insights[hidden], #dashboard-movements[hidden] { display: none !important; }
.dashboard-history-chart-panel{margin-top:16px;padding:17px 18px 13px;min-width:0}.dashboard-history-chart-wrap{height:220px;margin-top:10px}.dashboard-history-legend{margin-top:12px}.balance-dot{background:#49a97b}.balance-line{fill:none;stroke:#49a97b;stroke-width:2.2;vector-effect:non-scaling-stroke}.balance-point{stroke:#49a97b}.dashboard-history-chart-panel .x-labels{font-size:8px}
@media(max-width:700px){.dashboard-history-chart-panel{margin-top:11px;padding:14px 12px 11px}.dashboard-history-chart-wrap{height:178px}.dashboard-history-legend{gap:9px;font-size:8px}.dashboard-history-chart-panel .x-labels{font-size:7px}}

.monthly-payment-alerts-inline { margin: 0 0 14px; padding: 13px 16px; border: 1px solid #f2c9ca; border-left: 4px solid #c83f46; border-radius: 8px; background: #fff4f4; }
.payment-status.status-registrado, .payment-status.status-sin_cargo { background: #f1f5f8; color: #74869a; }
.monthly-payment-alerts-inline[hidden] { display: none !important; }
.monthly-payment-alert-heading { display: block; margin-bottom: 4px; color: #a52631; font-size: 11px; }
.monthly-payment-alerts-inline .alert-item { border-color: #f3dede; }
.monthly-payment-alert .alert-avatar.red { background: #fde4e5; color: #b62834; }
.monthly-payment-alert .alert-copy strong { color: #a52631; }
.monthly-payment-alert .alert-copy small { color: #b2424b; }
.monthly-payment-alert-empty { padding: 13px 4px; color: #8795a3; font-size: 10px; line-height: 1.55; }
.alerts-view { min-height: 65vh; }
.alerts-page-heading { margin: 6px 0 19px; }
.alerts-page-panel { padding: 8px 18px; }
.alerts-page-panel .alert-item { padding: 13px 3px; }
.alerts-page-panel .alert-copy strong { font-size: 11px; }
.alerts-page-panel .alert-copy span, .alerts-page-panel .alert-copy small { font-size: 9px; }
.alerts-page-panel .monthly-payment-alert-empty { padding: 20px 3px; font-size: 11px; }
.alerts-panel { overflow-y: auto; }
@media(max-width:700px) {
  .monthly-payment-alerts-inline { margin-bottom: 10px; padding: 10px 11px; }
  .alerts-page-panel { padding: 5px 11px; }
  .alerts-page-heading { margin: 2px 0 14px; }
  .alerts-panel { max-height: 360px; }
}
.athlete-rate-panel{grid-column:1/-1;border:1px solid #dceaf1;border-radius:8px;padding:12px 14px;background:#f7fbfd}.athlete-rate-panel legend{padding:0 6px;color:#315f78;font-size:11px;font-weight:700}.athlete-rate-panel>p:first-of-type,.athlete-rate-cloud-note{margin:2px 0 10px;color:#72889a;font-size:9px;line-height:1.5}.athlete-rate-preview{margin:9px 0 0;padding:9px 10px;border-radius:6px;background:#eaf5f9;color:#2f6883;font-size:10px;font-weight:700}.athlete-rate-cloud-note{padding:10px;background:#fff7e9;border-radius:6px}.athlete-rate-next{display:block;margin-top:5px;color:#6d8292;font-size:8px;white-space:normal}
.payment-status.status-exonerado{background:#eaf4fa;color:#397a99}.payment-status.status-exonerado i{background:#56a8c8}
.athlete-rate-panel[hidden],.athlete-rate-panel [hidden],.athlete-rate-cloud-note[hidden]{display:none}

.payment-history-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.payment-history-actions .delete-monthly-payment{color:#b94b4b;border-color:#f0d4d4}.payment-history-actions .delete-monthly-payment:hover{background:#fff3f3}
