/* V204 · COURTSIDE EDITORIAL
   A product-specific visual language for the authenticated application.
   Flat, data-led and intentionally unlike generic rounded SaaS dashboards. */
#app-shell{
  --court-ink:#101820;
  --court-navy:#0b1e2d;
  --court-paper:#f2f0eb;
  --court-white:#fffefa;
  --court-line:#cdd1cf;
  --court-muted:#667078;
  --court-orange:#ed6b2d;
  --court-blue:#215c91;
  --court-green:#087d67;
  background:var(--court-paper)!important;
  color:var(--court-ink)!important;
  font-family:"Segoe UI",Arial,sans-serif!important;
}
#app-shell *,#app-shell *:before,#app-shell *:after{box-sizing:border-box}
#app-shell h1,#app-shell h2,#app-shell h3,#app-shell h4,#app-shell .card-title{
  color:var(--court-ink)!important;font-family:"Arial Narrow","Segoe UI",Arial,sans-serif!important;
  font-weight:800!important;letter-spacing:-.035em!important;
}

/* Navigation becomes a control rail, not a floating app bar. */
#app-shell .app-sidebar{background:var(--court-navy)!important;border:0!important;box-shadow:none!important}
#app-shell .sidebar-brand{border-right:1px solid rgba(255,255,255,.12)!important}
#app-shell .sidebar-collapse,#app-shell .sidebar-nav>button,#app-shell .sidebar-nav .nav-main,#app-shell .sidebar-nav .nav-group-toggle{
  border-radius:2px!important;box-shadow:none!important;
}
#app-shell .sidebar-nav>button.active,#app-shell .sidebar-nav .nav-main.active,#app-shell .sidebar-nav .nav-group.active>.nav-group-toggle{
  color:#fff!important;background:transparent!important;border-color:#3d5668!important;box-shadow:inset 0 -3px 0 var(--court-orange)!important;
}
#app-shell .sidebar-nav>button:hover,#app-shell .sidebar-nav .nav-main:hover,#app-shell .sidebar-nav .nav-group-toggle:hover{background:#122b3e!important}
#app-shell .sidebar-nav .nav-group-items{border-radius:0!important;background:#081722!important;border-top:1px solid #233b4d!important}
#app-shell .sidebar-nav .nav-group-items button{border-radius:0!important}
#app-shell .sidebar-nav .nav-group-items button.active{background:#17364c!important;box-shadow:inset 3px 0 0 var(--court-orange)!important}
#app-shell .app-header{background:var(--court-white)!important;border-bottom:1px solid var(--court-line)!important;box-shadow:none!important;backdrop-filter:none!important}
#app-shell .header-team-switcher{border-radius:2px!important;border-color:var(--court-line)!important;background:transparent!important}
#app-shell .header-actions button,#app-shell .ah-icon-btn,#app-shell .header-equipo-gestionar{border-radius:2px!important;box-shadow:none!important}

/* Main canvas and editorial page openings. */
#app-shell main,#app-shell .app-main{background:var(--court-paper)!important}
#app-shell .tab-panel{max-width:none!important;padding:24px 38px 56px!important}
#app-shell .module-hero,#app-shell .page-hero,#app-shell .panel-header,#app-shell .perfiles-hero,#app-shell .load-hero{
  position:relative!important;margin:0 0 22px!important;padding:18px 20px 18px 26px!important;
  border:0!important;border-bottom:1px solid var(--court-ink)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
#app-shell .module-hero:before,#app-shell .page-hero:before,#app-shell .panel-header:before,#app-shell .perfiles-hero:before,#app-shell .load-hero:before{
  content:"";position:absolute;left:0;top:18px;bottom:18px;width:5px;background:var(--court-orange);
}
#app-shell .module-hero h1,#app-shell .page-hero h1,#app-shell .panel-header h2,#app-shell .perfiles-hero h1,#app-shell .load-hero h1{font-size:30px!important;line-height:1!important}

/* Containers: sharp sheets separated by rules. */
#app-shell .card,#app-shell .panel,#app-shell .section-card,#app-shell .chart-card,#app-shell .inicio-card,#app-shell .inicio-quick-card,
#app-shell .table-wrap,#app-shell .report-chart-panel,#app-shell .injury-history-card,#app-shell .player-card,#app-shell .player-load-card,
#app-shell .tlr-section,#app-shell .tlr-player,#app-shell .ce44-ex,#app-shell .ce44-task-toolbar,#app-shell .ce44-task-picker{
  background:var(--court-white)!important;border:1px solid var(--court-line)!important;border-radius:3px!important;box-shadow:none!important;
}
#app-shell .card,#app-shell .panel,#app-shell .section-card{padding:18px!important}
#app-shell .card-title{padding:0 0 11px!important;border-bottom:1px solid var(--court-ink)!important;font-size:15px!important;text-transform:none!important}
#app-shell .grid-2{gap:14px!important}

/* KPIs resemble a scorer's table: numbered, ruled and compact. */
#app-shell .kpi-grid{gap:1px!important;background:var(--court-line)!important;border:1px solid var(--court-line)!important}
#app-shell .kpi,#app-shell .kpi-card,#app-shell .inicio-kpi,#app-shell .fr-kpi,#app-shell .salud-kpi,#app-shell .v8-kpi,
#app-shell .load-player-summary>div,#app-shell .dsb-item{
  position:relative!important;margin:0!important;background:var(--court-white)!important;border:0!important;border-radius:0!important;box-shadow:none!important;
}
#app-shell .kpi:before,#app-shell .kpi-card:before,#app-shell .inicio-kpi:before,#app-shell .fr-kpi:before{content:"";position:absolute;left:0;top:0;width:34px;height:3px;background:var(--court-blue)}
#app-shell .kpi .value,#app-shell .kpi-value,#app-shell .inicio-kpi-value,#app-shell .fr-kpi-value,#app-shell .dsb-value{font-family:"Arial Narrow","Segoe UI",sans-serif!important;font-variant-numeric:tabular-nums;font-size:27px!important;color:var(--court-ink)!important}
#app-shell .kpi-label,#app-shell .kpi .label,#app-shell .fr-kpi-label,#app-shell .dsb-label{font-size:9px!important;letter-spacing:.12em!important;color:var(--court-muted)!important}

/* Controls use clear physical geometry. */
#app-shell button,#app-shell .btn,#app-shell .button,#app-shell input,#app-shell select,#app-shell textarea{border-radius:2px!important;box-shadow:none!important}
#app-shell .btn,#app-shell .button,#app-shell button{font-weight:750!important}
#app-shell .btn-primary,#app-shell .button-primary,#app-shell .btn.btn-primary,#app-shell .ce44-add-task-btn{
  color:#fff!important;background:var(--court-blue)!important;border-color:var(--court-blue)!important;box-shadow:inset 0 -2px 0 rgba(0,0,0,.18)!important;
}
#app-shell .btn-primary:hover,#app-shell .button-primary:hover,#app-shell .btn.btn-primary:hover{background:#17466e!important;transform:none!important}
#app-shell input,#app-shell select,#app-shell textarea{background:#fff!important;border:1px solid #b9c0c3!important}
#app-shell input:focus,#app-shell select:focus,#app-shell textarea:focus{border-color:var(--court-blue)!important;outline:2px solid rgba(33,92,145,.15)!important;outline-offset:0!important}
#app-shell .cargas-mode-toggle,#app-shell .subtabs,#app-shell .tabs{padding:0!important;background:transparent!important;border:0!important;border-bottom:1px solid var(--court-line)!important;border-radius:0!important}
#app-shell .cargas-mode-btn,#app-shell .subtab,#app-shell .tab-btn{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
#app-shell .cargas-mode-btn.active,#app-shell .subtab.active,#app-shell .tab-btn.active{color:var(--court-ink)!important;box-shadow:inset 0 -3px 0 var(--court-orange)!important}

/* Data tables: stronger scan lines, numeric alignment and no zebra-card effect. */
#app-shell table{border-collapse:collapse!important;font-variant-numeric:tabular-nums}
#app-shell th{padding:10px 12px!important;background:var(--court-navy)!important;color:#f6f3ec!important;border:0!important;border-right:1px solid #294152!important;font-size:9px!important;letter-spacing:.1em!important}
#app-shell td{padding:11px 12px!important;background:transparent!important;border-bottom:1px solid #d9dcda!important;color:#26323a!important}
#app-shell tbody tr:nth-child(even){background:#f6f5f1!important}
#app-shell tbody tr:hover{background:#e9eff1!important}
#app-shell tbody tr:hover td{background:transparent!important}

/* Player and load records keep status through colour, not decorative chrome. */
#app-shell .player-card,#app-shell .player-load-card{overflow:hidden!important}
#app-shell .player-card:hover,#app-shell .player-load-card:hover{transform:none!important;border-color:#7d888d!important}
#app-shell .player-card .plc-avatar,#app-shell .player-load-card .plc-avatar{border-radius:2px!important}
#app-shell .player-load-card.acwr-card-sub{background:linear-gradient(90deg,#eaf3fb 0 7px,var(--court-white) 7px)!important;box-shadow:none!important}
#app-shell .player-load-card.acwr-card-sweet{background:linear-gradient(90deg,#ddf1eb 0 7px,var(--court-white) 7px)!important;box-shadow:none!important}
#app-shell .player-load-card.acwr-card-high{background:linear-gradient(90deg,#fff0cf 0 7px,var(--court-white) 7px)!important;box-shadow:none!important}
#app-shell .player-load-card.acwr-card-critical{background:linear-gradient(90deg,#f8dede 0 7px,var(--court-white) 7px)!important;box-shadow:none!important}
#app-shell .player-load-card.acwr-card-none{background:linear-gradient(90deg,#e6e8e7 0 7px,var(--court-white) 7px)!important;box-shadow:none!important}
#app-shell .plc-simple-result>div{border-color:#dfe1df!important}

/* Match console: dark scoreboard surrounded by paper controls. */
#app-shell .live-scoreboard,#app-shell .match-scoreboard,#app-shell .tlr-head{background:var(--court-navy)!important;border-radius:2px!important;box-shadow:none!important}
#app-shell .live-scoreboard strong,#app-shell .match-scoreboard strong{font-family:"Arial Narrow","Segoe UI",sans-serif!important;font-variant-numeric:tabular-nums}
#app-shell .quarter-btn.active,#app-shell .live-quarter.active{background:var(--court-orange)!important;border-color:var(--court-orange)!important;color:#fff!important}

/* External load entry follows a worksheet rather than a stack of widgets. */
#app-shell .ce44-toolbar,#app-shell .ce44-days,#app-shell .ce44-summary{border-radius:0!important}
#app-shell .ce44-summary{gap:1px!important;background:var(--court-line)!important;border:1px solid var(--court-line)!important}
#app-shell .ce44-summary>div{margin:0!important;border:0!important;border-radius:0!important}
#app-shell .ce44-ex{border-left:5px solid var(--court-orange)!important;padding:14px!important}
#app-shell .ce44-metrics>div{background:#f4f3ef!important;border-radius:2px!important}
#app-shell .ce44-metrics button{border-radius:1px!important}
#app-shell .ce44-metrics button.on{background:var(--primary)!important;border-color:var(--primary)!important}
#app-shell .ce44-guide{border-radius:2px!important;background:#e9e7e1!important}

/* Modals are working documents, not floating glass cards. */
#app-shell .modal-back{background:rgba(8,18,25,.72)!important;backdrop-filter:none!important}
#app-shell .modal{border:0!important;border-top:6px solid var(--court-orange)!important;border-radius:2px!important;box-shadow:0 24px 70px rgba(0,0,0,.3)!important}
#app-shell .modal-header{background:var(--court-white)!important;border-bottom:1px solid var(--court-ink)!important}
#app-shell .modal-close{border-radius:0!important;background:transparent!important}

/* Status tokens are small labels, not oversized pills. */
#app-shell .badge,#app-shell .pill,#app-shell .status-badge,#app-shell .fr-badge,#app-shell .load-state-badge,#app-shell .tlr-chip{
  border-radius:2px!important;text-transform:uppercase!important;letter-spacing:.055em!important;font-size:9px!important;
}

/* Charts sit directly on the sheet with restrained framing. */
#app-shell canvas{filter:saturate(.78) contrast(1.04)}
#app-shell .report-chart-panel{padding:16px!important}
#app-shell .report-chart-head{border-bottom:1px solid var(--court-line)!important;padding-bottom:10px!important}

@media(max-width:900px){
  #app-shell .tab-panel{padding:16px 14px 42px!important}
  #app-shell .module-hero,#app-shell .page-hero,#app-shell .panel-header,#app-shell .perfiles-hero,#app-shell .load-hero{padding:14px 12px 14px 20px!important}
  #app-shell .module-hero h1,#app-shell .page-hero h1,#app-shell .panel-header h2,#app-shell .perfiles-hero h1,#app-shell .load-hero h1{font-size:24px!important}
  #app-shell .card,#app-shell .panel,#app-shell .section-card{padding:13px!important}
  #app-shell .kpi-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  #app-shell .tab-panel{padding:10px 8px 34px!important}
  #app-shell .kpi-grid{grid-template-columns:1fr 1fr!important}
  #app-shell .kpi .value,#app-shell .kpi-value,#app-shell .inicio-kpi-value,#app-shell .fr-kpi-value{font-size:22px!important}
  #app-shell .card-title{font-size:14px!important}
  #app-shell th,#app-shell td{padding:9px 8px!important}
}

@media print{
  #app-shell{--court-paper:#fff;--court-white:#fff}
  #app-shell .card,#app-shell .panel,#app-shell .table-wrap,#app-shell .tlr-section,#app-shell .tlr-player{break-inside:avoid;box-shadow:none!important}
}
