/*
Theme Name: drake-child
Author: Luigi Rossi
Description: ch drake theme
Version: 1.0
Template: drake

This is the child theme for Drake theme, generated with Generate Child Theme plugin by catchthemes.

(optional values you can add: Theme URI, Author URI, License, License URI, Tags, Text Domain)
*/
/* ========= INIZIO CODICE COACH APP ========= */

:root {
	--brand-primary: #0A6872;
	--brand-primary-light: rgba(10, 104, 114, 0.08);
	--brand-danger: #D32F2F;
	--ui-background: #F4F5F7;
	--ui-foreground: #FFFFFF;
	--ui-separator: #EAECEF;
	--text-primary: #1A1D21;
	--text-secondary: #525866;
	--font-stack: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
	--space-xs: 4px;
	--space-s: 8px;
	--space-m: 16px;
	--space-l: 24px;
	--space-xl: 32px;
	--anim-duration: 0.15s;
	--anim-ease: power2.inOut;
}

/* Applichiamo il font-stack al container dell'app invece che a tutto il body del tema */
.coach-app-wrapper {
    font-family: var(--font-stack);
    -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Stiliamo il container principale per adattarsi al tema */
.coach-app-wrapper .app-container {
	width: 100%;
	height: calc(100vh - 100px); /* Altezza calcolata per non sovrapporsi a header/footer */
    min-height: 700px;
	max-width: 1800px;
	background-color: var(--ui-background);
	border-radius: 20px;
	box-shadow: 0 10px 40px rgba(0,0,0,0.08);
	border: 1px solid var(--ui-separator);
	display: flex;
	overflow: hidden;
	position: relative;
    margin: 20px auto; /* Per centrare l'app */
}

.coach-app-wrapper .app-sidebar {
	width: 280px;
	background-color: var(--ui-foreground);
	border-right: 1px solid var(--ui-separator);
	padding: var(--space-l);
	display: flex;
	flex-direction: column;
	transition: transform 0.3s ease;
	z-index: 2000;
}
	
.coach-app-wrapper .sidebar-header {
	font-size: 1.8em;
	font-weight: 700;
	margin-bottom: var(--space-xl);
	color: var(--text-primary);
}
.coach-app-wrapper .sidebar-header span {
	color: var(--brand-primary);
	font-size: 0.7em;
	vertical-align: super;
}
	
.coach-app-wrapper .sidebar-nav {
	display: flex;
	flex-direction: column;
	gap: var(--space-xs);
}
.coach-app-wrapper .sidebar-nav a {
	display: flex;
	align-items: center;
	gap: var(--space-m);
	padding: 12px var(--space-m);
	text-decoration: none;
	color: var(--text-secondary);
	font-weight: 600;
	border-radius: 10px;
	transition: background-color 0.2s ease, color 0.2s ease;
}
.coach-app-wrapper .sidebar-nav a svg {
	stroke: var(--text-secondary);
	transition: stroke 0.2s ease;
}
.coach-app-wrapper .sidebar-nav a:hover {
	background-color: var(--brand-primary-light);
	color: var(--brand-primary);
}
.coach-app-wrapper .sidebar-nav a:hover svg {
	stroke: var(--brand-primary);
}
.coach-app-wrapper .sidebar-nav a.active {
	background-color: var(--brand-primary);
	color: var(--ui-foreground);
}
.coach-app-wrapper .sidebar-nav a.active svg {
	stroke: var(--ui-foreground);
}

.coach-app-wrapper .app-content {
	flex: 1;
	padding: var(--space-xl) var(--space-l);
	overflow-y: auto;
}

.coach-app-wrapper .menu-toggle {
	display: none;
	position: absolute;
	top: var(--space-m);
	left: var(--space-m);
	z-index: 2001;
	background: var(--ui-background);
	border: 1px solid var(--ui-separator);
	cursor: pointer;
	padding: var(--space-s);
	border-radius: 50%;
}

@media (max-width: 900px) {
	.coach-app-wrapper .app-container { border-radius: 0; height: auto; }
	.coach-app-wrapper .app-sidebar { position: absolute; top: 0; left: 0; bottom: 0; transform: translateX(-100%); box-shadow: 4px 0 20px rgba(0,0,0,0.1); }
	.coach-app-wrapper .app-sidebar.open { transform: translateX(0); }
	.coach-app-wrapper .app-content { padding: var(--space-l) var(--space-m); }
}

.coach-app-wrapper .draggable-item { cursor: grab; }
.coach-app-wrapper .sortable-ghost { opacity: 0.4; background-color: var(--brand-primary-light); border-style: dashed; }
.coach-app-wrapper .sortable-chosen { cursor: grabbing; }

.coach-app-wrapper .card {
	background-color: var(--ui-foreground);
	border: 1px solid var(--ui-separator);
	border-radius: 16px;
	transition: all 0.2s ease;
}

@media (hover: hover) {
   .coach-app-wrapper .card:hover:not(.sortable-chosen) { transform: translateY(-5px); }
}
	
.coach-app-wrapper .athlete-card { padding: var(--space-l); display: flex; flex-direction: column; }
	
.coach-app-wrapper .add-athlete-card {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: var(--space-m);
	padding: var(--space-l);
	border-style: dashed;
	color: var(--text-secondary);
}
.coach-app-wrapper .add-athlete-card:hover { border-color: var(--brand-primary); color: var(--brand-primary); }

.coach-app-wrapper details.program-card { margin-bottom: var(--space-l); }
.coach-app-wrapper details.program-card summary { padding: var(--space-m) var(--space-l); font-weight: 600; font-size: 1.1em; display: flex; justify-content: space-between; align-items: center; list-style: none; }
.coach-app-wrapper details.program-card summary::-webkit-details-marker { display: none; }
.coach-app-wrapper details.program-card .accordion-content { padding: 0 var(--space-s) var(--space-s); }

.coach-app-wrapper details.week-card { margin: var(--space-m); background: #fafbfc; border-radius: 12px; }
.coach-app-wrapper details.week-card summary { padding: var(--space-m); font-weight: 600; color: var(--text-primary); display: flex; justify-content: space-between; align-items: center; list-style: none; }
.coach-app-wrapper details.week-card summary::-webkit-details-marker { display: none; }
.coach-app-wrapper details.week-card .accordion-content { padding: var(--space-s) var(--space-m) var(--space-m); }

.coach-app-wrapper .accordion-content {
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.4s cubic-bezier(0.25, 0.1, 0.25, 1.0);
}
.coach-app-wrapper details[open] > .accordion-content {
	max-height: 2000px; 
	transition: max-height 0.6s cubic-bezier(0.25, 0.1, 0.25, 1.0);
}
.coach-app-wrapper .accordion-arrow {
	transition: transform var(--anim-duration) ease;
}

.coach-app-wrapper .editable-title { display: flex; align-items: center; gap: var(--space-s); }
.coach-app-wrapper .editable-title .edit-btn { background: none; border: none; cursor: pointer; opacity: 0; transition: opacity 0.2s; padding: 4px; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.coach-app-wrapper .editable-title:hover .edit-btn, .editable-title .edit-btn:focus { opacity: 1; background-color: var(--ui-separator); }
.coach-app-wrapper .editable-title .editable-input { font: inherit; border: 1px solid var(--brand-primary); border-radius: 6px; padding: var(--space-s); outline: none; width: 100%; }
	
.coach-app-wrapper .summary-title-group { display: flex; align-items: center; gap: var(--space-m); }

.coach-app-wrapper .athlete-header { display:flex; justify-content:space-between; align-items:center; padding-bottom:var(--space-l); border-bottom:1px solid var(--ui-separator); margin-bottom:var(--space-xl); }
.coach-app-wrapper .athlete-header-buttons { display:flex; gap: 12px; align-items: center; }
@media (max-width: 768px) {
	.coach-app-wrapper .athlete-header { flex-direction: column; align-items: flex-start; gap: var(--space-l); }
	.coach-app-wrapper .athlete-header-buttons { width: 100%; flex-direction: column; gap: var(--space-s); }
	.coach-app-wrapper .athlete-header-buttons .action-btn { width: 100%; margin: 0 !important; }
}

.coach-app-wrapper .sheet-table { width: 100%; border-collapse: collapse; margin-top: var(--space-m); }
.coach-app-wrapper .sheet-table th, .sheet-table td { padding: var(--space-m) var(--space-s); text-align: left; }
.coach-app-wrapper .sheet-table thead { border-bottom: 1px solid var(--ui-separator); }
.coach-app-wrapper .sheet-table th { color: var(--text-secondary); font-weight: 500; font-size: 0.9em; text-transform: uppercase; letter-spacing: 0.5px; }
.coach-app-wrapper .sheet-table tbody tr:hover .row-actions { opacity: 1; }
.coach-app-wrapper .sheet-table input { width: 100%; border: none; padding: var(--space-s); font-size: 1em; background: transparent; border-radius: 6px; }
.coach-app-wrapper .sheet-table input:focus { background-color: var(--brand-primary-light); outline: 2px solid var(--brand-primary-light); }
.coach-app-wrapper .row-actions { opacity: 0; transition: opacity 0.2s ease; }
	
.coach-app-wrapper .modal { display: none; position: fixed; z-index: 3000; inset: 0; background-color: rgba(0,0,0,0.3); backdrop-filter: blur(10px); align-items: center; justify-content: center; }
.coach-app-wrapper .modal-content { background-color: var(--ui-foreground); padding: var(--space-xl); border-radius: 20px; width: 90%; max-width: 500px; box-shadow: 0 20px 50px rgba(0,0,0,0.2); }
.coach-app-wrapper .modal-content h3 { margin-bottom: var(--space-l); }
.coach-app-wrapper .modal-content .action-btn { margin-top: var(--space-m); }

.coach-app-wrapper .action-btn { font-size: 1em; font-weight: 600; padding: 12px 24px; border: none; border-radius: 10px; cursor: pointer; transition: all 0.2s ease; }
.coach-app-wrapper .primary-btn { background-color: var(--brand-primary); color: var(--ui-foreground); }
.coach-app-wrapper .primary-btn:hover { background-color: #08555e; }
.coach-app-wrapper .secondary-btn { background-color: var(--ui-separator); color: var(--text-primary); }
.coach-app-wrapper .secondary-btn:hover { background-color: #dde0e3; }
.coach-app-wrapper .tertiary-btn { background-color: transparent; color: var(--text-secondary); font-weight: 500; font-size: 0.9em; padding: 8px 16px; }
.coach-app-wrapper .tertiary-btn:hover { background-color: var(--ui-separator); color: var(--text-primary); }

/* ========= FINE CODICE COACH APP ========= */