body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.toggle-slider{background-color:#ccc;border-radius:13px;cursor:pointer;height:26px;position:relative;transition:background-color var(--transition-speed);width:50px}.toggle-slider.on{background-color:#4caf50}.slider-circle{background-color:#fff;border-radius:50%;height:22px;left:2px;position:absolute;top:2px;transition:transform var(--transition-speed);width:22px}.toggle-slider.on .slider-circle{transform:translateX(24px)}.header{align-items:center;background:linear-gradient(90deg,#1f2937,#111827);border-bottom:1px solid #ffffff1a;box-shadow:0 2px 8px #00000080;color:#fff;display:flex;flex-wrap:wrap;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;justify-content:space-between;max-width:100%;min-width:0;padding:12px 20px;-webkit-user-select:none;user-select:none;z-index:1000}.logo img{border-radius:6px;box-shadow:0 0 8px #ffffff1a;height:48px;transition:transform var(--transition-speed) ease;width:auto}.logo img:hover{transform:scale(1.05)}.title h1{font-size:1.8rem;font-weight:600;letter-spacing:.5px;margin:0;-webkit-user-select:text;user-select:text;white-space:nowrap}.options{box-sizing:border-box;display:flex;flex-wrap:wrap;gap:8px;max-height:0;opacity:0;overflow:hidden;padding:0;pointer-events:none;transition:max-height var(--transition-speed) ease,padding var(--transition-speed) ease,opacity var(--transition-speed) ease;width:100%}.options.open{max-height:1000px;opacity:1;padding:12px 0;pointer-events:auto}.options-toggle-button{background:#ffffff0d;border:none;border-radius:6px;box-shadow:inset 0 0 5px #ffffff1a;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;min-width:140px;padding:6px 10px;text-align:center;transition:background-color var(--transition-speed) ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.options-toggle-button:focus,.options-toggle-button:hover{background:#ffffff26;outline:none}.options-toggle-button:active{background:#ffffff40}.option{align-items:center;background:#ffffff0d;border-radius:6px;box-shadow:inset 0 0 4px #ffffff12;display:flex;font-size:.9rem;gap:6px;padding:6px 10px;-webkit-user-select:none;user-select:none;white-space:nowrap}.option .toggle,.option input[type=checkbox]{cursor:pointer}@media (max-width:480px){.header{align-items:flex-start}.header,.options{flex-direction:column;gap:6px}.option{flex:1 1 100%;min-width:0}.title h1{font-size:1.4rem;margin:6px 0;white-space:normal}.options-toggle-button{font-size:.85rem;min-width:80px;padding:4px 8px}}.punch-card-container{align-items:center;color:var(--color-tree-text);font-family:var(--font-family);max-width:100%}.punch-card,.punch-card-container{display:flex;flex-direction:column}.punch-card{background-color:var(--color-tree-bg);border-radius:var(--border-radius);box-shadow:0 4px 6px var(--color-shadow-light);gap:1rem;max-width:1000px;padding:1.5rem;width:100%}.punch-card-header{align-items:center;display:flex;justify-content:space-between;width:100%}.punch-card h2{color:var(--color-tree-text-strong);font-size:1.5rem;margin:0}.available-points{color:var(--color-tree-text);font-size:1.1rem;font-weight:600}.tree-columns{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);width:100%}.tree-column{background-color:var(--color-tree-bg);border-radius:var(--border-radius);box-shadow:0 2px 4px var(--color-shadow-light);display:flex;flex-direction:column;padding:1rem}.column-title{border-bottom:2px solid var(--color-tree-border);color:var(--color-tree-text-strong);font-size:1.1rem;margin-bottom:.75rem;padding-bottom:.5rem;text-transform:capitalize}.punch-card-row{display:flex;flex-direction:column;margin-bottom:.5rem;padding:.4rem .8rem}.tree-name{color:var(--color-tree-text);font-weight:700;margin-bottom:.5rem}.tree-data{display:flex;flex-wrap:wrap}.category-data{background-color:var(--color-tree-header-bg);border-radius:var(--border-radius);color:var(--color-tree-text);flex:1 1 auto;font-weight:600;margin:0 0 .5rem;padding:.4rem .8rem;text-align:center;width:100%}:root{--color-bg:#fff;--color-text:#222;--color-border:#ccc;--color-border-strong:#2c5364;--color-shadow:#00000026;--font-family:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;--transition-speed:0.3s;--border-radius:8px;--color-hover-bg:#00000026;--color-focus:#28a745;--color-primary-dark:#218838;--color-shadow-light:#0000001f;--color-shadow-dark:#ffffff1a;--color-bg-light:#f9fafb;--color-tree-border:#ccc;--color-tree-border-strong:#007bff;--color-tree-bg:#fefefe;--color-tree-header-bg:#f0f0f0;--color-tree-header-border:#ddd;--color-tree-text:#222;--color-tree-text-strong:#333;--color-button-primary-bg:#007bff;--color-button-primary-bg-hover:#0056b3;--color-button-disabled-bg:#a0a0a0;--color-button-success-bg:#28a745;--color-button-success-bg-hover:#1e7e34;--color-button-danger-bg:#dc3545;--color-button-disabled-cursor:not-allowed;--color-progress-bg:#eee;--color-progress-fill-incomplete:red;--color-progress-fill-complete:green;--color-unlock-req-bg:#fafafa;min-width:0}.dark-mode{--color-bg:#111827;--color-text:#e0e0e0;--color-border:#444;--color-border-strong:#59c;--color-shadow:#000000b3;--color-hover-bg:#ffffff1a;--color-focus:#59c;--color-primary-dark:#3b82f6;--color-shadow-light:#000000b3;--color-shadow-dark:#ffffff26;--color-bg-light:#1f2937;--color-tree-border:#444;--color-tree-border-strong:#59c;--color-tree-bg:#1f2937;--color-tree-header-bg:#273549;--color-tree-header-border:#444;--color-tree-text:#e0e0e0;--color-tree-text-strong:#cbd5e1;--color-button-primary-bg:#3b82f6;--color-button-primary-bg-hover:#1e40af;--color-button-disabled-bg:#6c757d;--color-button-success-bg:#594;--color-button-success-bg-hover:#3a6b29;--color-button-danger-bg:#b44;--color-button-disabled-cursor:not-allowed;--color-progress-bg:#444;--color-progress-fill-incomplete:#ff6b6b;--color-progress-fill-complete:#4ade80;--color-unlock-req-bg:#2a3548}body,html{background-color:#fff;background-color:var(--color-bg);color:#222;color:var(--color-text);height:100%;margin:0;min-height:100vh;overflow-x:hidden;padding:0;transition:background-color .3s ease,.3s ease,color .3s ease .3s;transition:background-color var(--transition-speed) ease,var(--transition-speed) ease,color var(--transition-speed) var(--transition-speed) ease}body,button,html{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-family:var(--font-family)}button{border:none;border-radius:8px;border-radius:var(--border-radius);cursor:pointer;transition:background-color .3s ease .3s,color .3s .3sease,box-shadow .3s ease .3s;transition:background-color var(--transition-speed) var(--transition-speed) ease,color var(--transition-speed) var(--transition-speed)ease,box-shadow var(--transition-speed) var(--transition-speed) ease}.shadow{box-shadow:0 4px 6px #00000026;box-shadow:0 4px 6px var(--color-shadow)}.text-center{text-align:center}.hidden{display:none!important}.dark-mode ::-webkit-scrollbar{background-color:#fff;background-color:var(--color-bg);width:12px}.dark-mode ::-webkit-scrollbar-thumb{background-color:#2c5364;background-color:var(--color-border-strong);border-radius:8px;border-radius:var(--border-radius)}:focus-visible{outline:3px solid var(--color-warning);outline-offset:2px}.tree-info{align-items:center;background:var(--color-bg);border-radius:1.25rem;box-shadow:0 8px 20px var(--color-shadow-light);display:flex;flex-wrap:wrap;gap:1.2rem;margin-bottom:1.5rem;padding:1.5rem 2rem;transition:background-color var(--transition-speed) ease}.skill-points,.tree-info{color:var(--color-text);max-width:100%;min-width:0}.skill-points{flex:1 1 200px;font-size:1.15rem;font-weight:700}.starting-tree{color:var(--color-border);display:flex;flex:1 1 220px;flex-direction:column;font-weight:600;max-width:100%;min-width:0}.starting-tree label{color:var(--color-text);font-size:.95rem;margin-bottom:.35rem}.starting-tree select{background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text);cursor:pointer;font-family:inherit;font-size:1rem;max-width:100%;min-width:0;padding:.4rem .6rem;transition:border-color var(--transition-speed) ease,background-color var(--transition-speed) ease}.starting-tree select:focus{border-color:var(--color-focus);box-shadow:0 0 6px var(--color-focus);outline:none}.button-wrapper{display:flex;flex-basis:100%;flex-wrap:wrap;gap:12px;justify-content:flex-start;margin-top:16px}.action-button{align-items:center;display:flex;flex:0 1 150px}.action-button button{background-color:var(--color-border-strong);border:none;border-radius:var(--border-radius);box-shadow:0 6px 12px var(--color-shadow-light);color:#fff;cursor:pointer;font-size:.7rem;font-weight:700;min-height:30px;padding:.5rem 1.2rem;transition:background-color var(--transition-speed) ease,box-shadow var(--transition-speed) ease;-webkit-user-select:none;user-select:none;width:100%}.action-button button:hover{background-color:var(--color-primary-dark);box-shadow:0 8px 20px #1b3f5099}@media (max-width:600px){.tree-info{align-items:left;flex-direction:row;gap:1rem}.action-button,.skill-points,.starting-tree{flex:1 1 100%}}.category-accordion{background-color:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--border-radius);overflow:hidden}.accordion-item{border-bottom:1px solid var(--color-border)}.accordion-header{align-items:center;background:var(--color-tree-header-bg);border:none;color:var(--color-tree-text);cursor:pointer;display:flex;font-size:1rem;font-weight:700;justify-content:space-between;outline:none;padding:12px 16px;text-align:left;transition:background-color var(--transition-speed);width:100%}.accordion-header:hover{background:var(--color-hover-bg)}.accordion-content{background:var(--color-tree-bg);padding:12px 16px}.skill{color:var(--color-tree-text);margin-bottom:12px}.skill p{margin:0 0 6px}.skill-button{border-radius:var(--border-radius);display:inline-block;font-size:.9rem;margin-right:8px;margin-top:4px;padding:6px 12px;transition:background-color var(--transition-speed)}.add-skill-button{background:var(--color-button-success-bg)}.add-skill-button:hover:not(:disabled){background:var(--color-button-success-bg-hover)}.add-skill-button:disabled{background:var(--color-button-disabled-bg)}.remove-skill-button{background:var(--color-button-danger-bg)}.remove-skill-button:hover:not(:disabled){filter:brightness(.9)}.remove-skill-button:disabled{background:var(--color-button-disabled-bg)}.category-progress{align-items:right;display:flex;flex-grow:1;gap:2px;height:10px;margin-left:10px;max-width:100px}.progress-chunk{background-color:#ddd;border-radius:2px;flex:1 1;height:10px;max-width:25px}.progress-chunk.filled{background-color:var(--color-button-success-bg)}@media (max-width:600px){.accordion-header{font-size:.95rem;padding:10px 14px}.accordion-content{padding:10px 14px}.skill p{font-size:.9rem}.skill-button{display:block;font-size:.85rem;margin:6px 0;width:100%}.category-progress{max-width:40px}.progress-chunk{max-width:10px}}.unlock-requirements{background-color:var(--color-unlock-req-bg);border-top:1px solid var(--color-tree-header-border);color:var(--color-tree-text);font-size:.9rem;padding:.75rem 1rem;-webkit-user-select:none;user-select:none}.requirement{margin-bottom:.5rem}.progress-bar{background-color:var(--color-progress-bg);margin-top:2px;overflow:hidden;width:100%}.progress-bar,.progress-fill{border-radius:6px;height:10px}.progress-fill{background-color:var(--color-progress-fill-incomplete);transition:width var(--transition-speed) ease}.progress-fill[style*="width: 100%"]{background-color:var(--color-progress-fill-complete)}.coach-skill-tree{font-family:var(--font-family);margin:1rem auto;max-width:100%;min-width:0;transition:background-color var(--transition-speed) ease;width:800px}.tree-wrapper{display:flex;flex-direction:column;gap:1rem}.tree-container{background-color:var(--color-tree-bg);border:2px solid var(--color-tree-border);border-radius:var(--border-radius);box-shadow:0 4px 6px var(--color-shadow-light);overflow:hidden;transition:border-color var(--transition-speed) ease,background-color var(--transition-speed) ease}.tree-header{background-color:var(--color-tree-header-bg);border-bottom:1px solid var(--color-tree-header-border);cursor:pointer;flex-wrap:wrap;justify-content:space-between;padding:1rem;transition:background-color var(--transition-speed) ease;-webkit-user-select:none;user-select:none}.tree-header,.tree-header h2{align-items:center;display:flex}.tree-header h2{color:var(--color-tree-text);flex-grow:1;font-size:1.3rem;gap:1rem;margin:0}.points-invested{color:var(--color-tree-text-strong);flex-basis:100%}.points-invested,.unlock-btn{font-weight:600;margin-top:.5rem}.unlock-btn{background-color:var(--color-button-success-bg);border:none;border-radius:5px;color:#fff;cursor:pointer;padding:.5rem 1rem;transition:background-color var(--transition-speed) ease;-webkit-user-select:none;user-select:none}.unlock-btn.locked,.unlock-btn:disabled{background-color:var(--color-button-disabled-bg);cursor:var(--color-button-disabled-cursor)}.unlock-btn:hover:not(:disabled){background-color:var(--color-button-success-bg-hover)}.tree-content{overflow:hidden;padding:0 1rem;transition:max-height var(--transition-speed) ease}.tree-container.expanded .tree-content{max-height:2000px;padding:1rem}.category-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.category h3{color:var(--color-tree-text);font-size:1.1rem;margin-top:0}.skill{margin-bottom:.75rem}.skill-button{border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;margin:0 .25rem .25rem 0;padding:.3rem .7rem;transition:background-color var(--transition-speed) ease;-webkit-user-select:none;user-select:none}.add-skill-button{background-color:var(--color-button-success-bg)}.add-skill-button:disabled{background-color:var(--color-button-disabled-bg);cursor:var(--color-button-disabled-cursor)}.remove-skill-button{background-color:var(--color-button-danger-bg)}.remove-skill-button:disabled{background-color:var(--color-button-disabled-bg);cursor:var(--color-button-disabled-cursor)}.folder-view{background:var(--color-bg);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 8px var(--color-shadow-light);display:flex;flex-direction:column;margin:20px auto;max-width:90%;min-width:0;padding:0 20px 20px;transition:background-color var(--transition-speed) ease}.tabs-header{-webkit-overflow-scrolling:touch;border-bottom:2px solid var(--color-border-strong);display:flex;gap:12px;margin:16px 0 0;overflow-x:auto;padding-bottom:8px}.tabs-header button{background:var(--color-bg);border:none;border-bottom:2px solid #0000;border-radius:6px 6px 0 0;color:var(--color-text);cursor:pointer;flex-shrink:0;font-size:1rem;font-weight:600;padding:8px 16px;transition:background-color var(--transition-speed) ease,color var(--transition-speed) ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.tabs-header button:hover{background:var(--color-hover-bg)}.tabs-header button.active{background:var(--color-bg);border-bottom:2px solid var(--color-border-strong);box-shadow:inset 0 -2px 0 var(--color-border-strong);color:var(--color-border-strong)}.tabs-content{background:var(--color-bg-light);border-radius:0 0 12px 12px;box-shadow:inset 0 0 5px var(--color-shadow-dark);color:var(--color-text);margin-top:-2px;max-width:100%;min-height:200px;min-width:0;padding:20px;transition:background-color var(--transition-speed) ease}@media (max-width:600px){.folder-view{margin:10px;padding:0 10px 15px}.tabs-header{gap:8px;margin:12px 0 0;padding-bottom:6px}.tabs-header button{font-size:.9rem;padding:6px 10px}.tabs-content{min-height:150px;padding:15px 10px}}.app-container{background-color:var(--color-bg);display:flex;flex-direction:column;max-width:100%;min-height:100vh;min-width:0;transition:background-color var(--transition-speed) ease}.site-footer{background-color:var(--color-bg-light);border-top:1px solid var(--color-border);color:var(--color-text);font-size:.6rem;padding:16px 0;text-align:center}.footer-links{display:inline-flex;gap:.9rem}.footer-links a{color:var(--color-text);text-decoration:none}.footer-links a:hover{color:#0969da;text-decoration:underline}
/*# sourceMappingURL=main.95cf03de.css.map*/