:root{--bg:#fff;--surface:#f6f6f4;--text:#171a1c;--text-muted:#5b6166;--border:#e3e4e1;--accent:#16b981;--accent-strong:#0b3b2e;--radius:6px;--focus-ring:0 0 0 3px #16b98159;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4{letter-spacing:-.02em;margin:0 0 .5em;font-weight:700}p{color:var(--text-muted);margin:0 0 1em}a{color:var(--accent-strong)}button,input,select,textarea{font-family:inherit}:focus-visible{box-shadow:var(--focus-ring);outline:none}.drawer{background:var(--bg);border-right:1px solid var(--border);z-index:50;flex-direction:column;width:260px;height:calc(100vh - 64px);transition:transform .2s;display:flex;position:fixed;top:64px;left:0;transform:translate(-100%)}.drawer.open{transform:translate(0)}.drawer-header{border-bottom:1px solid var(--border);padding:1.25rem 1.5rem;font-size:1.1rem;font-weight:700}.drawer-nav{flex-direction:column;gap:2px;margin:0;padding:.5rem;list-style:none;display:flex}.drawer-link{border-radius:var(--radius);color:var(--text);padding:.6em .85em;font-size:.95rem;font-weight:500;text-decoration:none;display:block}.drawer-link:hover{background:var(--surface)}.drawer-link.active{background:var(--accent-strong);color:#fff}.hamburger{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);cursor:pointer;flex-direction:column;justify-content:center;gap:4px;width:2.25rem;height:2.25rem;padding:0;display:flex;position:relative}.hamburger span{background:var(--text);border-radius:1px;width:1.1rem;height:2px;margin:0 auto;transition:transform .2s,opacity .2s;display:block}.hamburger.open span:first-child{transform:translateY(6px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.language-switcher{border:1px solid var(--border);border-radius:var(--radius);display:flex;overflow:hidden}.language-option{background:var(--bg);color:var(--text-muted);cursor:pointer;border:none;padding:.4em .7em;font-size:.8rem;font-weight:600}.language-option+.language-option{border-left:1px solid var(--border)}.language-option.active{background:var(--accent-strong);color:#fff}.topbar{border-bottom:1px solid var(--border);background:var(--bg);z-index:60;justify-content:space-between;align-items:center;height:64px;padding:0 1.5rem;display:flex;position:fixed;top:0;left:0;right:0}.topbar-right{align-items:center;gap:.85rem;margin-left:auto;display:flex}.topbar-user{color:inherit;font-size:.9rem;font-weight:600;text-decoration:none}.topbar-user:hover{color:var(--accent-strong);text-decoration:underline}.topbar-logout{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text-muted);cursor:pointer;padding:.4em .7em;font-size:.8rem;font-weight:600}.topbar-logout:hover{border-color:var(--accent);color:var(--accent-strong)}.app-shell{background:var(--bg);min-height:100vh}.app-main{min-height:100vh;margin-left:0;padding-top:64px;transition:margin-left .2s}.app-main.drawer-open{margin-left:260px}.app-content{max-width:960px;margin:0 auto;padding:2rem 1.5rem}.btn{border-radius:var(--radius);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5em;padding:.65em 1.25em;font-size:.95rem;font-weight:600;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:var(--accent-strong);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent);color:var(--accent-strong)}.btn-secondary{background:var(--bg);color:var(--text);border-color:var(--border)}.btn-secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent-strong)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.field{text-align:left;flex-direction:column;gap:.4em;display:flex}.field-label{color:var(--text);font-size:.85rem;font-weight:600}.field-hint{color:var(--text-muted);font-size:.8rem}.field-error{color:#b3261e;font-size:.8rem}.rating-scale{flex-wrap:wrap;gap:.5rem;display:flex}.rating-option{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;text-align:center;background:var(--bg);flex-direction:column;align-items:center;gap:.25em;min-width:4.5rem;padding:.5em .75em;display:flex;position:relative}.rating-option:hover{border-color:var(--accent)}.rating-option.read-only{cursor:default}.rating-option.read-only:hover{border-color:var(--border)}.rating-option.read-only.selected:hover{border-color:var(--accent-strong)}.rating-option.selected{border-color:var(--accent-strong);background:var(--accent-strong)}.rating-option.selected .rating-number,.rating-option.selected .rating-label{color:#fff}.rating-option input{opacity:0;pointer-events:none;position:absolute}.rating-number{color:var(--text);font-size:1.1rem;font-weight:700}.rating-label{color:var(--text-muted);font-size:.7rem}.answer-form{flex-direction:column;gap:1.25rem;max-width:560px;display:flex}.answer-choice-list{flex-direction:column;gap:.4rem;display:flex}.answer-choice-item{align-items:center;gap:.5rem;font-size:.9rem;display:flex}.input{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);padding:.6em .85em;font-size:.95rem}.input::placeholder{color:var(--text-muted)}.input:focus-visible{border-color:var(--accent);box-shadow:var(--focus-ring)}.input:disabled{background:var(--surface);color:var(--text-muted);cursor:not-allowed}.coaches-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.coaches-form{flex-direction:column;gap:1rem;max-width:380px;margin:1.5rem 0;display:flex}.coaches-create-mode{gap:1rem;font-size:.9rem;display:flex}.coaches-create-mode label{align-items:center;gap:.4em;display:flex}.coaches-list{flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}.coaches-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.coaches-row-info{flex-direction:column;gap:.2rem;display:flex}.coaches-row-meta{color:var(--text-muted);font-size:.85rem}.coaches-token{color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);width:fit-content;padding:.15em .5em;font-size:.75rem}.coaches-row-actions{flex-wrap:wrap;gap:.5rem;display:flex}.coaches-convert-form{flex-direction:column;gap:1rem;width:100%;margin-top:.5rem;display:flex}.coaches-form-actions{justify-content:flex-end;gap:.5rem;display:flex}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin:1.5rem 0 2rem;display:grid}.dashboard-stat{flex-direction:column;gap:.25rem;display:flex}.dashboard-stat-value{color:var(--accent-strong);font-size:1.75rem;font-weight:700}.dashboard-stat-label{color:var(--text-muted);font-size:.85rem}.info-tooltip{vertical-align:middle;margin-left:.4em;display:inline-flex;position:relative}.info-tooltip-trigger{border:1px solid var(--border);background:var(--surface);width:1.15rem;height:1.15rem;color:var(--text-muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-family:Georgia,serif;font-size:.7rem;font-style:italic;font-weight:700;line-height:1;display:inline-flex}.info-tooltip-trigger:hover,.info-tooltip-trigger:focus-visible{border-color:var(--accent);color:var(--accent-strong)}.info-tooltip-content{z-index:20;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);width:max-content;max-width:min(300px,80vw);color:var(--text-muted);text-align:left;white-space:normal;padding:.65em .85em;font-size:.8rem;font-weight:400;display:none;position:absolute;top:140%;left:0;box-shadow:0 4px 16px #0000001a}.info-tooltip:hover .info-tooltip-content,.info-tooltip-content.open{display:block}.category-description-levels{flex-direction:column;gap:.5em;margin:0;padding:0;list-style:none;display:flex}.category-description-levels strong{color:var(--text)}.category-description-single{margin:0}.evaluation-detail{flex-direction:column;gap:1.25rem;max-width:640px;display:flex}.evaluation-detail-meta{color:var(--text-muted);font-size:.9rem}.evaluation-detail-notes h2{margin-bottom:.4rem;font-size:1rem}.evaluation-detail-notes p{white-space:pre-wrap}.evaluation-form{flex-direction:column;gap:1.25rem;max-width:640px;display:flex}.evaluation-categories{flex-direction:column;gap:1rem;display:flex}.evaluation-category{flex-direction:column;gap:.5rem;display:flex}.evaluation-category-name{font-size:.9rem;font-weight:600}.evaluation-total{border-top:1px solid var(--border);padding-top:1rem;font-size:1rem}.evaluation-form-actions{justify-content:flex-end;gap:.5rem;display:flex}.evaluations-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.evaluations-list{flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}.evaluations-row-link{color:inherit;text-decoration:none;display:block}.evaluations-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;transition:border-color .15s;display:flex}.evaluations-row-link:hover .evaluations-row{border-color:var(--accent)}.evaluations-row-info{flex-direction:column;gap:.2rem;display:flex}.evaluations-row-meta{color:var(--text-muted);font-size:.85rem}.evaluations-row-notes{font-size:.85rem;font-style:italic}.evaluations-row-score{color:var(--accent-strong);font-size:1.2rem;font-weight:700}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.login-card{flex-direction:column;gap:1rem;width:100%;max-width:360px;display:flex}.login-card form{flex-direction:column;gap:1rem;display:flex}.login-submit{width:100%}.login-error{color:#b3261e;margin:0;font-size:.85rem}.login-divider{color:var(--text-muted);align-items:center;gap:.75rem;font-size:.8rem;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border);flex:1;height:1px}.magic-link-page{justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.magic-link-card{text-align:center;max-width:360px}.players-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.players-header-actions{gap:.5rem;display:flex}.players-import-input{display:none}.players-import-error{color:#b3261e;max-width:480px;margin-top:1.5rem}.players-import-summary{color:var(--accent-strong);max-width:480px;margin-top:1.5rem;font-weight:600}.players-import-preview{flex-direction:column;gap:1rem;max-width:480px;margin:1.5rem 0;display:flex}.players-import-warning{color:#b3261e;font-size:.85rem}.players-import-rows{flex-direction:column;gap:.4rem;max-height:320px;display:flex;overflow-y:auto}.players-import-row{align-items:center;gap:.6rem;font-size:.9rem;display:flex}.players-import-row-meta{color:var(--text-muted);white-space:nowrap;margin-left:auto;font-size:.8rem}.players-form{flex-direction:column;gap:1rem;max-width:420px;margin:1.5rem 0;display:flex}.players-form-actions{justify-content:flex-end;gap:.5rem;display:flex}.players-list{flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}.players-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.players-row-info{flex-direction:column;gap:.15rem;display:flex}.players-row-meta{color:var(--text-muted);font-size:.85rem}.players-status{color:var(--accent-strong);font-size:.75rem;font-weight:600}.players-status.inactive{color:var(--text-muted)}.players-row-actions{gap:.5rem;display:flex}.profile-form{flex-direction:column;gap:1rem;max-width:420px;margin-top:1.5rem;display:flex}.profile-saved{color:var(--accent-strong);font-weight:600}.qb-form{flex-direction:column;gap:1.25rem;max-width:560px;display:flex}.qb-assign-list{flex-direction:column;gap:.4rem;display:flex}.qb-assign-item{align-items:center;gap:.5rem;font-size:.9rem;display:flex}.qb-questions{flex-direction:column;gap:1rem;display:flex}.qb-question{flex-direction:column;gap:.85rem;display:flex}.qb-required{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.qb-form-actions{justify-content:flex-end;gap:.5rem;display:flex}.questionnaires-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.questionnaires-list{flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}.questionnaires-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.questionnaires-row-info{flex-direction:column;gap:.2rem;display:flex}.questionnaires-row-meta{color:var(--text-muted);font-size:.85rem}.questionnaires-status{color:var(--accent-strong);font-size:.75rem;font-weight:600}.questionnaires-status.inactive{color:var(--text-muted)}.questionnaires-row-right{align-items:center;gap:.75rem;display:flex}.submissions-list{flex-direction:column;gap:1rem;margin:1.5rem 0;display:flex}.submission-card{flex-direction:column;gap:1rem;max-width:640px;display:flex}.submission-meta{align-items:baseline;gap:.75rem;display:flex}.submission-date{color:var(--text-muted);font-size:.85rem}.submission-answers{flex-direction:column;gap:1rem;display:flex}.submission-answer{flex-direction:column;gap:.4rem;display:flex}.submission-question-text{font-size:.9rem;font-weight:600}.submission-answer-text{white-space:pre-wrap}.settings-card{flex-direction:column;gap:.75rem;max-width:480px;margin-top:1.5rem;display:flex}.settings-confirm{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);flex-direction:column;gap:.5rem;padding:1rem;display:flex}.settings-confirm-actions{justify-content:flex-end;gap:.5rem;display:flex}.settings-deleted{color:var(--accent-strong);font-weight:600}.users-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.users-new-admin-form{flex-direction:column;gap:1rem;max-width:380px;margin:1.5rem 0;display:flex}.users-new-admin-actions{justify-content:flex-end;gap:.5rem;display:flex}.users-table-wrap{margin-top:1.5rem;overflow-x:auto}.users-table{border-collapse:collapse;width:100%;font-size:.85rem}.users-table th,.users-table td{border:1px solid var(--border);text-align:center;white-space:nowrap;padding:.6em .75em}.users-table th:first-child,.users-table td:first-child{text-align:left}.users-table thead th{background:var(--surface);font-weight:600}.users-kind{color:var(--text-muted);font-size:.8rem}
