/* Touchline beta.2 — a compact editorial matchday desk. */
@font-face{font-family:'Editor Barlow';src:url('assets/fonts/Barlow-Regular.ttf');font-weight:400;font-display:swap}
@font-face{font-family:'Editor Barlow';src:url('assets/fonts/Barlow-Bold.ttf');font-weight:700;font-display:swap}
:root{--ink:#23313c;--paper:#f2f3ef;--muted:#64716f;--line:#d9dfd9;--accent:#d6fd7a;--radius:10px}
body{font-family:'Editor Barlow',Arial,'PingFang SC','Microsoft YaHei',sans-serif;font-size:15px}
.topbar{height:78px;padding-inline:32px;background:#fcfcf8}.brand{font-size:18px}.brand small{font-size:10px;letter-spacing:.6px}.brand-mark{background:var(--ink);color:var(--accent);border:0;border-radius:3px}
.workflow{padding:20px 32px;background:#fcfcf8}.workflow nav button{font-size:14px}.workflow nav button>small{font-size:11px}.template-tag{letter-spacing:1px}
.workspace{grid-template-columns:390px minmax(0,1fr);padding:30px 32px 44px;gap:32px;max-width:1760px}.editor-heading{margin-bottom:24px}h1{font-size:27px;letter-spacing:-.7px}.eyebrow{color:#617365;font-size:10px}.editor-heading p{font-size:13px}
.form-card{padding:20px;margin-bottom:16px;box-shadow:0 2px 0 #23313c03}.section-caption{font-size:14px;font-weight:700}.form-card label,.player-form-fields>label,.field-label,.field-row label{font-size:12px}.field-hint{font-size:11px}.text-button,.secondary,.compact{font-size:12px}.primary{font-size:13px}.remove-link{font-size:11px}
input:not([type=checkbox],[type=range],[type=file],[type=color]),select{font-size:13px;min-height:44px;background:#fdfefa;border-color:#cfd8d0}.setup-section{border:1px solid var(--line);border-radius:10px;margin-bottom:16px;background:white;overflow:hidden}.setup-section>summary{padding:18px 20px;cursor:pointer;font-size:14px;font-weight:700;list-style:none;display:flex;align-items:center;gap:10px}.setup-section>summary:after{content:'+';margin-left:auto;font-size:21px;font-weight:400}.setup-section[open]>summary:after{content:'−'}.setup-section>summary small{font-size:10px;font-weight:400;color:var(--muted)}.setup-section>summary::-webkit-details-marker{display:none}.setup-section>.form-card{border:0;border-top:1px solid var(--line);border-radius:0;margin:0;box-shadow:none}.setup-section>summary:focus-visible{outline:3px solid #87a44c;outline-offset:-4px}
.format-picker{border:0;padding:0;margin:0 0 20px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.format-picker legend{font-size:12px;margin-bottom:10px}.format-picker label{position:relative;margin:0;cursor:pointer}.format-picker input{position:absolute;opacity:0}.format-picker label>span{display:block;border:1px solid #cdd7d0;border-radius:7px;padding:12px 15px;background:#f5f7f2;font-size:13px}.format-picker b{font-size:27px;margin-right:4px;line-height:1}.format-picker small{display:block;font-size:10px;margin-top:6px;color:var(--muted)}.format-picker input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}.format-picker input:checked+span b{color:var(--accent)}.format-picker input:checked+span small{color:#c8d1c7}.format-picker input:focus-visible+span{outline:3px solid #87a44c;outline-offset:3px}
.tactics-board{background:#263c33;border-radius:8px;color:#e9f2e2;padding:12px 16px 10px}.tactics-heading{display:flex;justify-content:space-between;align-items:center}.tactics-heading span{font-size:9px;letter-spacing:2px;color:#bdceb9}.tactics-heading strong{font-size:17px;letter-spacing:2px}.tactics-pitch{height:225px;margin:10px 12px;position:relative;border:1px solid #e4efd130;background:linear-gradient(0deg,transparent 49.7%,#e4efd130 49.7%,#e4efd130 50.3%,transparent 50.3%)}.tactics-pitch:before{content:'';position:absolute;width:58px;height:58px;border:1px solid #e4efd130;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.tactics-pitch:after{content:'';position:absolute;top:0;bottom:0;left:28%;right:28%;background:linear-gradient(#e4efd125,#e4efd125) top/100% 30px no-repeat,linear-gradient(#e4efd125,#e4efd125) bottom/100% 30px no-repeat;pointer-events:none}.tactics-player{position:absolute;transform:translate(-50%,-50%);width:27px;height:27px;border-radius:50%;background:#d6fd7a;color:#243b30;z-index:1;font-size:12px;font-weight:700;border:2px solid #263c33}.tactics-player:active:not(:disabled){transform:translate(-50%,-50%) scale(.96)}.tactics-player:hover{background:#fff}.tactics-board p{text-align:center;font-size:10px;color:#cad6c6;white-space:pre-wrap}
.roster-title{font-size:14px}.roster-instruction{font-size:11px;color:var(--muted);margin:0 0 12px}.roster-group{font-size:11px;letter-spacing:.4px;padding:17px 2px 8px;color:#567060}.roster-player{gap:10px;padding:10px 12px;min-height:66px;background:#fff;border-radius:7px;margin-bottom:5px;border:1px solid var(--line)}.roster-player:hover{border-color:#98ad92;background:#fcfef7}.drag-handle{font-size:23px;cursor:grab;color:#8a988a;touch-action:none;min-width:20px}.player-info strong{font-size:14px}.player-info small{font-size:11px}.roster-ghost{opacity:.35;background:#d6fd7a}.roster-player.sortable-chosen{box-shadow:0 6px 24px #263c3320}.inactive-section{border:1px dashed #b8c3b4;border-radius:7px;margin:18px 0;padding:14px;background:#eaf0e6}.inactive-section summary{cursor:pointer;font-size:12px}.inactive-player{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center;margin-top:12px;font-size:12px}.inactive-player select{font-size:11px;padding:8px;min-height:36px}
.preview-area{top:22px}.viewer{border-radius:10px;box-shadow:0 12px 40px #23313c0b;border:1px solid #d7dfd6}.preview-top{font-size:12px}.chapters{gap:7px;flex-wrap:wrap}.chapters button{font-size:11px;padding:8px 12px}.preview-bottom{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.tip{border-left:2px solid #a4b68f;background:transparent;border-radius:0;padding:10px 14px}.tip p{font-size:11px}.editor-footer{position:sticky;bottom:0;background:#f2f3eff2;backdrop-filter:blur(8px);padding-block:16px;border-top:1px solid var(--line);z-index:2}.site-footer{font-size:11px}
@media(min-width:1700px){.workspace{grid-template-columns:420px minmax(0,1fr);gap:40px}.tactics-pitch{height:240px}}
@media(max-width:1100px){.workspace{grid-template-columns:340px minmax(0,1fr);padding:24px;gap:24px}.topbar,.workflow{padding-inline:24px}.project-heading{display:none}}
@media(max-width:800px){.workspace{display:flex;flex-direction:column;padding:20px;gap:25px}.editor,.preview-area{width:100%;min-width:0}.preview-area{position:static;order:-1}.preview-bottom,.context-tip,.tip{display:none}.topbar{height:auto;min-height:76px;padding:16px 20px;flex-wrap:wrap;gap:16px}.project-actions{margin-left:auto;gap:12px}.workflow{padding:16px 20px}.workflow nav{width:100%;justify-content:space-between;gap:8px}.workflow .step-line{width:12px}.workflow nav button{font-size:12px;column-gap:6px}.workflow nav button>small{font-size:9px}.template-tag{display:none}.editor-heading{margin-top:3px}.tactics-pitch{max-width:330px;margin-inline:auto}.setup-section>summary small{font-size:10px}.site-footer{padding:22px 20px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
