:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#182531;background:#f2f5f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}.app{min-height:100vh}.sidebar{background:#14232b;color:#e8ecee;padding:24px 17px;position:fixed;inset:0 auto 0 0;width:240px;overflow:auto}.brand{font-size:19px;letter-spacing:1.2px;font-weight:850;line-height:1.15;margin:8px 5px 27px}.brand small{display:block;font-weight:400;font-size:11px;color:#b9c5cc;letter-spacing:.3px;margin-top:7px}.nav{display:flex;flex-direction:column;gap:5px}.nav button{padding:12px 13px;text-align:left;border:0;border-radius:11px;background:transparent;color:#dde5e8}.nav button.active,.nav button:hover{background:#293b43;color:#f6ca73}.sidefoot{font-size:12px;color:#aebcc3;margin:32px 7px;line-height:1.5}.main{margin-left:240px;padding:30px;max-width:1440px}.topline{display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow{text-transform:uppercase;letter-spacing:1px;font-size:11px;color:#7c8991;font-weight:750}h1{margin:5px 0 20px;font-size:clamp(23px,3vw,34px);letter-spacing:-.6px}h2{font-size:20px;margin:0 0 13px}h3{font-size:16px;margin:0 0 8px}.muted{color:#647580}.note{font-size:13px;line-height:1.55}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:#fff;border:1px solid #dfe6e7;border-radius:17px;padding:19px;box-shadow:0 3px 12px #1c35340a;min-width:0}.card p{line-height:1.6}.stat b{font-size:30px;display:block}.stat span{font-size:13px;color:#667782}.tag{display:inline-flex;align-items:center;background:#f6e8c8;color:#65490d;padding:5px 9px;border-radius:50px;font-size:12px;font-weight:750}.btn{border:0;background:#162d37;color:#fff;padding:10px 14px;border-radius:9px;font-weight:650}.btn.secondary{background:#e9eff0;color:#223942}.btn.danger{background:#fae8e6;color:#8e2f29}.btn.gold{background:#e8bb66;color:#202e31}.btn:hover{filter:brightness(.97)}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:15px}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}.field label{font-size:13px;font-weight:650}.field input,.field select,.field textarea,select,input[type=date]{border:1px solid #cbd6d9;background:white;border-radius:9px;padding:10px;max-width:100%;color:#1c2b33}.field textarea{min-height:85px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #e5c079}.line{height:1px;background:#e3e9e9;margin:13px 0}.pill{background:#eaf0ef;padding:7px 11px;border-radius:9px;font-size:13px}.list{display:grid;gap:9px}.listitem{background:#f7f9f9;border:1px solid #e5ebea;padding:12px;border-radius:11px;display:flex;justify-content:space-between;gap:12px;align-items:center}.small{font-size:12px}.good{color:#146642}.warn{color:#8c4c1d}.full{grid-column:1/-1}.training{border-left:5px solid #e4b85e}.training header{display:flex;justify-content:space-between;gap:10px}.training h3{margin-bottom:4px}.training p{margin:5px 0}.pitch-wrap{background:#1b633d;border-radius:16px;padding:10px;position:relative;touch-action:none;user-select:none}.pitch{width:100%;display:block;aspect-ratio:1.5;max-height:68vh;touch-action:none}.pitch text{pointer-events:none}.options{display:flex;gap:7px;flex-wrap:wrap}.notice{border-left:4px solid #dfb35f;background:#fff9e9;padding:12px 15px;border-radius:8px;font-size:13px;line-height:1.6}.rating{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.rating button{width:37px;height:36px;border:1px solid #d1d9db;background:white;border-radius:8px}.rating button.selected{background:#e5bb67;color:#14222a;border-color:#e5bb67;font-weight:800}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:540px}th,td{padding:11px 8px;text-align:left;border-bottom:1px solid #e9eeee;font-size:13px}th{color:#63747d}.bar{height:12px;border-radius:12px;background:#ebf0ef;overflow:hidden}.bar span{height:100%;display:block;background:#d9aa51;border-radius:12px}.checkrow{display:flex;align-items:flex-start;gap:10px;padding:9px 0}.checkrow input{margin-top:4px}.empty{text-align:center;color:#697a81;padding:30px 12px;background:#f5f8f7;border-radius:12px}.mobile-head{display:none}.clickable{cursor:pointer}.clickable:hover{background:#f1f6f4}@media(max-width:950px){.sidebar{position:static;width:auto;padding:11px 14px}.brand{display:none}.sidefoot{display:none}.nav{flex-direction:row;overflow:auto}.nav button{flex-shrink:0;padding:10px}.main{margin:0;padding:17px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:580px){.grid,.grid.two{grid-template-columns:1fr}.main{padding:12px}.card{padding:14px}.pitch{aspect-ratio:1.18}.topline{align-items:flex-start}.row{gap:7px}h1{margin-top:8px}.nav button{font-size:12px}}

/* V1.3: controles aprimorados */
#frameTimeline{margin:10px 0;max-height:105px;overflow:auto}#frameTimeline .btn{font-size:12px;padding:7px 9px}.pitch-wrap{overflow:hidden}#demoHelp:not(:empty){background:#f4f8ee;border-radius:9px;padding:12px;border-left:4px solid #e1ba60}.field select{width:100%}@media(max-width:580px){.pitch-wrap{padding:4px}.pitch{aspect-ratio:1.50;max-height:none}}

/* V1.4 */
.diagram{max-width:480px;margin:12px 0}.diagram svg{width:100%;height:auto;border-radius:10px;display:block}.diagram span{display:block;font-size:11px;color:#667982;margin-top:5px}.timer{font-size:clamp(58px,10vw,96px);font-weight:800;letter-spacing:-4px;color:#193442;font-variant-numeric:tabular-nums;text-align:center;padding:20px 0}.session-step{border:1px solid #dfe8e7;background:#f8faf9;border-radius:9px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;width:100%;text-align:left;color:#243c45}.session-step.current{background:#fff0c9;border-color:#d5ab4f}.metric{margin:14px 0}.metric .row{gap:10px}.metric span{font-size:13px}textarea{width:100%;min-height:80px}#sessionNoteForm label{display:block;margin:10px 0}.stack>.card{min-width:0}

/* V1.5 */
.step-card{background:var(--panel,#f3f5f6);border:1px solid rgba(127,127,127,.2);border-radius:12px;padding:13px;margin:4px 0}.step-card p{margin-bottom:0}.step-card b{color:inherit}@media print{.sidebar,.topline,.nav,.btn,button,select{display:none!important}.main{max-width:100%;padding:0}.card{break-inside:avoid}.app{display:block}}

/* V1.6: campo vertical, mesma orientação das demonstrações. */
.pitch{aspect-ratio:530 / 800!important;max-height:min(75vh,780px);max-width:520px;margin:auto;}
.pitch-wrap{display:flex;justify-content:center;align-items:center;}
@media(max-width:580px){.pitch{max-height:none;width:100%;max-width:100%;}}

/* V1.7 - seleção inclusiva */
.match-check{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #55646e;border-radius:8px}.match-check input{width:18px;height:18px;flex-shrink:0}

/* Versão 1.8 — leitura rápida, seleção de goleiro e rodízio manual */
.match-period {border-left:4px solid #d6ad60;box-shadow:none;background:#fcfdfc;}
.match-period label{font-size:13px;display:block;margin:8px 0;}
.match-period select{width:100%;padding:9px;border:1px solid #cbd6d9;border-radius:8px;}
.swap-box{display:grid;gap:7px;grid-template-columns:1fr 1fr;margin-top:10px;padding:10px;background:#f0f5f3;border-radius:10px;}
.swap-box button{grid-column:1/-1;}
.diagram{max-width:300px;}
@media(max-width:580px){.match-period{padding:12px}.swap-box{grid-template-columns:1fr}.pitch{max-width:420px}.nav button{font-size:13px}}

/* V1.9: sistemas e instruções técnicas com foco em leitura no tablet */
.formation-canvas{max-width:350px;margin:14px auto;background:#eef5f1;border-radius:14px;padding:10px}.formation-field{width:100%;height:auto;display:block}.learning-steps{display:grid;gap:10px;margin:15px 0}.learning-steps>div{background:#f5f8f6;border:1px solid #e0e9e5;padding:12px;border-radius:10px}.learning-steps p{margin:5px 0 0;font-size:14px}.guide-detail{align-self:start}.guide-detail summary{cursor:pointer;list-style:none}.guide-detail summary::-webkit-details-marker{display:none}.guide-detail summary h2{margin:10px 0}.guide-detail[open]{border-color:#d0ab62}.actual-section{margin:16px 0;padding:15px;background:#f4f8f7;border-radius:13px;border:1px solid #d8e3de}.actual-period{padding:14px;margin:10px 0;background:white;border:1px solid #d7e2dd;border-radius:12px}.actual-period summary{cursor:pointer;font-weight:700}.actual-period .row{margin-top:12px}.actual-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:15px}.actual-fields label{display:flex;flex-direction:column;gap:3px;font-size:13px}.actual-fields input{max-width:100%;padding:9px;border:1px solid #cbd6d9;border-radius:8px}@media(max-width:580px){.actual-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.formation-canvas{padding:5px}.actual-section{padding:10px}}

/* V2.0 — Planejador, escalação visual e relatório de ciclo */
.planner-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:12px;margin:14px 0}.planner-filters label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:650}.planner-filters select,.planner-filters input{width:100%;min-width:0;border:1px solid #cad5d7;border-radius:9px;padding:10px;background:#fff}.planner-agenda{display:grid;gap:8px;margin:18px 0}.planner-block{display:grid;grid-template-columns:65px 1fr;gap:15px;align-items:start;padding:12px;background:#f5f8f6;border:1px solid #dfebe6;border-radius:10px}.planner-block> b{font-size:13px;color:#80602e}.planner-block p{margin:4px 0 0;font-size:13px}.match-visual{margin:18px 0 22px;padding:18px;border-radius:15px;background:#f1f6f2;border:1px solid #d6e5d8}.match-visual-grid{display:grid;grid-template-columns:minmax(200px,360px) minmax(190px,1fr);gap:17px;margin-top:12px}.match-field{display:block;width:100%;height:auto;border-radius:11px;touch-action:none;user-select:none}.match-marker{cursor:grab;touch-action:none}.match-marker:active{cursor:grabbing}.match-visual-aside .btn{margin:4px 5px 5px 0}.visual-role{display:flex;gap:8px;justify-content:space-between;align-items:center;padding:9px;border-bottom:1px solid #dce6df;font-size:13px}.visual-role span{font-size:12px;color:#687b71}.match-visual-aside{min-width:0}@media(max-width:720px){.match-visual-grid{grid-template-columns:1fr}.match-visual{padding:10px}.match-field{max-width:360px;margin:0 auto}.planner-block{gap:8px}}@media print{.nav,.match-visual button,.planner-filters, .sidebar {display:none!important}.match-visual{break-inside:avoid}.planner-agenda{break-inside:avoid}}

/* V2.1 — atividades, fichas para famílias, objetivos e análise local de vídeos */
.rubric-tip{font-size:12px;color:#526a71;background:#f4f8f5;padding:9px;border-radius:8px;margin:8px 0 0}
.family-card{max-width:820px;border:2px solid #d7b66e;padding:24px;border-radius:16px;background:#fffdf7;margin:12px auto}
.family-header{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#223839;border-bottom:2px solid #dfbb6f;padding-bottom:12px;flex-wrap:wrap}
.family-header b{font-size:22px;letter-spacing:1.3px}.family-header small{font-size:12px}
.mission-card-flex{display:grid;grid-template-columns:210px 1fr;gap:18px;margin-top:15px;align-items:start}
.mission-art{width:100%;max-width:210px;height:auto}.family-card h2{margin:4px 0 12px}.family-card p{line-height:1.55}.card-footer{border-top:1px solid #e9dcc2;padding-top:13px;font-size:12px}
.goal-item{border-bottom:1px solid #e2eae5;padding:10px 0}.goal-item p{line-height:1.5}
.video-layout{display:grid;grid-template-columns:minmax(250px,1.2fr) minmax(210px,1fr);gap:24px;margin:18px 0}
.video-layout video{width:100%;display:block;background:#132222;border-radius:12px;max-height:480px;margin:12px 0}
.video-layout label,.goal-item label,#goalForm label,#videoSessionForm label,#videoEventForm label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:650;margin:12px 0}
.video-layout input,#goalForm input,#goalForm select,#videoSessionForm input,#videoEventForm input,#videoEventForm select,#goalForm textarea,#videoEventForm textarea{width:100%;max-width:100%;padding:10px;border:1px solid #cbd6d9;border-radius:8px}
@media(max-width:700px){.mission-card-flex,.video-layout{grid-template-columns:1fr}.family-card{padding:15px}.mission-art{max-width:230px}}
@media print{
 body.print-family-card .sidebar,body.print-family-card .topline,body.print-family-card .main>h1,body.print-family-card .main .notice,body.print-family-card .main .card>.planner-filters,body.print-family-card .main .card>.row,body.print-family-card .main .card>.small{display:none!important}
 body.print-family-card .main{padding:0!important;margin:0!important;width:100%!important;max-width:none!important}
 body.print-family-card .main .stack>.card{border:0;box-shadow:none;padding:0}
 body.print-family-card .family-card{display:block!important;border:2px solid #777;max-width:none;width:100%;page-break-inside:avoid}
 body.print-family-card .family-header{display:flex!important}
 body.print-family-card .family-card .mission-card-flex{display:grid!important;grid-template-columns:180px 1fr!important}
 body.print-family-card .family-card .mission-art{max-width:180px}
}

/* V2.2 — painel de sincronização independente */
.cloud-form{display:grid;gap:12px;max-width:560px}
.cloud-form label{display:grid;gap:6px;font-size:14px;font-weight:650}
.cloud-form input{width:100%;padding:12px;border:1px solid #b4c6c9;border-radius:9px;font-size:16px}
.cloud-status{background:#edf6f2;border:1px solid #bedccc;padding:14px;border-radius:12px;line-height:1.65}
.cloud-status.warn{background:#fff5e4;border-color:#efce88}
.cloud-status.error{background:#fff1f1;border-color:#dfa9a9}
.cloud-actions{display:flex;flex-wrap:wrap;gap:9px;margin:14px 0}
.cloud-small{font-size:13px;line-height:1.5;color:#547077}
