:root{color-scheme:light;--page: #eef2ee;--panel: #fbfcf8;--panel-strong: #ffffff;--ink: #18241f;--muted: #637069;--line: #d5ded6;--field-dark: #257548;--field-mid: #2f8a55;--field-light: #4ca46d;--home: #e54848;--away: #246bd7;--ball: #f6c34f;--accent: #0f7f68;--accent-strong: #075f4d;--danger: #b73838;--shadow: 0 18px 40px rgba(25, 44, 37, .15);--sidebar-width: 244px;--inspector-width: 318px;--sidebar-surface: #f4f8f3;font-family:Inter,Segoe UI,Microsoft YaHei,PingFang SC,system-ui,sans-serif}[hidden]{display:none!important}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--page);color:var(--ink);overflow:hidden}button,input,select{font:inherit}button{border:0}.custom-tooltip{position:fixed;z-index:9999;max-width:min(260px,calc(100vw - 16px));padding:6px 9px;border-radius:6px;background:#18241ff5;color:#fff;box-shadow:0 8px 18px #0f241a33;font-size:12px;font-weight:750;line-height:1.35;pointer-events:none;opacity:0;transform:translateY(-2px);transition:opacity 70ms ease,transform 70ms ease;white-space:nowrap}.custom-tooltip.show{opacity:1;transform:translateY(0)}.app-shell{min-height:100%;display:grid;grid-template-rows:auto 1fr}.topbar{position:relative;min-height:72px;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr) max-content;align-items:center;gap:18px;padding:0 18px 0 0;border-bottom:0;background:#fbfcf8f0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:3}.topbar:after{position:absolute;right:0;bottom:0;left:var(--sidebar-width);height:1px;background:var(--line);content:"";pointer-events:none}.brand{display:inline-flex;align-items:center;align-self:stretch;justify-self:stretch;gap:10px;width:100%;padding:0 18px;border-right:1px solid var(--line);background:var(--sidebar-surface);font-size:20px;font-weight:800;white-space:nowrap}.brand-mark{width:28px;height:28px;display:block;flex:0 0 auto}.brand-mark img{display:block;width:100%;height:100%}.mode-switch,.topbar-center,.transport{display:inline-flex;align-items:center;gap:8px}.topbar-center{min-width:0;justify-self:start;justify-content:flex-start;position:relative}.transport{min-width:0;justify-self:end;justify-content:flex-end;flex-wrap:nowrap}.topbar-history-group{display:inline-flex;align-items:center;gap:6px}.topbar-divider{align-self:stretch;width:1px;min-height:42px;margin:0 4px;background:var(--line)}.mode-button,.tool-button,.tool-toggle,.icon-button{min-height:40px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--ink);background:#e4ebe6;cursor:pointer;transition:transform .14s ease,background .14s ease,color .14s ease,box-shadow .14s ease}.mode-button,.tool-button,.tool-toggle{padding:0 13px}.tool-toggle input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;margin:0;border:2px solid currentColor;border-radius:50%;background:transparent}.stage-overlay-toggle input,.preview-display-toggle input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:7px;height:7px;flex:0 0 7px;margin:0;border:0;border-radius:50%;background:#03120de0}.icon-button{width:40px;padding:0}.mode-button:hover,.tool-button:hover,.tool-toggle:hover,.icon-button:hover{transform:translateY(-1px);background:#d8e5dc}.mode-button:disabled,.tool-button:disabled,.icon-button:disabled{opacity:.42;cursor:not-allowed;transform:none;box-shadow:none}.ai-action-button{min-height:42px;border:2px solid #7c3aed;color:#35115f;background:#fff3bf;box-shadow:inset 0 0 0 1px #ffffffb8,0 10px 22px #5b21b629;font-weight:950}.ai-action-button svg{color:#7c3aed;stroke-width:2.8}.ai-action-button:hover:not(:disabled){border-color:#f59e0b;color:#251044;background:#ffe08a;box-shadow:inset 0 0 0 1px #ffffffbf,0 12px 26px #7c3aed38}.ai-action-button:disabled{opacity:.58;border-color:#b8a8d9;color:#786a90;background:#f2edf8;box-shadow:none}.guide-line-toolbar{display:inline-flex;align-items:center;gap:6px;padding:4px;border:1px solid rgba(7,55,42,.12);border-radius:9px;background:#edf3eee6}.guide-line-select{position:relative;min-height:34px;display:inline-flex;align-items:center;gap:6px;padding:0 7px;border-radius:7px;color:#314139;background:#f8faf6;font-size:13px;font-weight:850;white-space:nowrap}.guide-line-select span{color:var(--muted)}.guide-line-picker-button{min-height:28px;min-width:58px;border:0;border-radius:7px;padding:0 22px 0 8px;display:inline-flex;align-items:center;gap:6px;color:var(--ink);background:#edf3ee;cursor:pointer;font-size:14px;font-weight:900;position:relative}.guide-line-picker-button:has(.guide-line-color-swatch){min-width:50px;justify-content:center}.guide-line-picker-button.wide{min-width:104px}.guide-line-picker-button:after{position:absolute;right:8px;top:50%;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;content:"";transform:translateY(-65%) rotate(45deg)}.guide-line-picker-button:disabled{opacity:.55;cursor:not-allowed}.guide-line-picker-button span,.guide-line-picker-menu span{color:inherit}.guide-line-picker-menu{position:absolute;z-index:20;left:0;top:calc(100% + 6px);min-width:100%;padding:5px;border:1px solid rgba(7,55,42,.18);border-radius:8px;background:#fbfcf8fa;box-shadow:0 18px 36px #0c1f1833}.guide-line-picker-menu[hidden]{display:none}.guide-line-picker-menu button{width:100%;min-height:32px;border-radius:7px;padding:0 9px;display:flex;align-items:center;gap:8px;color:var(--ink);background:transparent;cursor:pointer;font-size:14px;font-weight:850;white-space:nowrap}.guide-line-color-menu{min-width:50px}.guide-line-color-menu button{justify-content:center;padding:0}.guide-line-picker-menu button:hover,.guide-line-picker-menu button.is-selected{background:#e6f0e9}.guide-line-color-swatch{width:12px;height:12px;border-radius:50%;display:inline-block;flex:0 0 12px;box-shadow:inset 0 0 0 1px #0f231b29}.guide-line-color-swatch.is-red{background:#e63a3a}.guide-line-color-swatch.is-orange{background:#f97316}.guide-line-color-swatch.is-yellow{background:#f5b924}.guide-line-color-swatch.is-green{background:#22c55e}.guide-line-color-swatch.is-cyan{background:#06b6d4}.guide-line-color-swatch.is-blue{background:#2a6deb}.guide-line-color-swatch.is-purple{background:#8b5cf6}.guide-line-color-swatch.is-white{background:#fff;box-shadow:inset 0 0 0 1px #0f231b61}.guide-line-type-icon{min-width:16px;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent-strong);font-weight:950;text-align:center}.guide-line-type-mark{width:15px;height:9px;display:block;background:currentColor;transform:skew(-12deg)}.guide-line-type-area{width:20px;height:16px;display:block;overflow:visible}.guide-line-type-area polygon{fill:#0f7f6814;stroke:currentColor;stroke-width:1.9;stroke-linejoin:round}.guide-line-action{min-height:34px;padding:0 10px}.guide-line-action svg{width:16px;height:16px;stroke-width:2.5}.mode-button.active,.tool-toggle:has(input:checked),.tool-button.is-active,.tool-button.primary{color:#fff;background:var(--accent);box-shadow:0 10px 20px #0f7f6838}.tool-toggle:has(input:checked) input{accent-color:#ffffff}.tool-button.record.is-recording{color:#fff;background:var(--danger);box-shadow:0 10px 20px #b7383838}.icon-button.danger{color:var(--danger)}.icon-button.danger:hover{color:#fff;background:var(--danger)}.save-status{min-width:54px;color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.save-status.is-saving{color:var(--accent-strong)}.mode-button svg,.tool-button svg,.tool-toggle svg,.icon-button svg,.section-title svg,.match-team-title svg{width:18px;height:18px;stroke-width:2.2}.workspace{min-height:0;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr) var(--inspector-width)}.clip-sidebar{min-width:0;overflow:auto;padding:18px 14px 20px;border-right:1px solid var(--line);background:var(--sidebar-surface)}.clip-panel{border-bottom:0;margin-bottom:0;padding-bottom:0}.player-manager-panel{padding-bottom:14px;margin-bottom:14px}.player-manager-entry{margin-top:0}.stage-area{min-width:0;min-height:0;padding:0}.stage-frame{--timeline-occlusion-bottom: 0px;position:relative;width:100%;height:100%;min-height:420px;overflow:hidden;border-radius:0;background:#0f3024;box-shadow:var(--shadow)}.stage-mode-switch{position:absolute;top:36px;left:32px;z-index:2}.stage-toggle-group{position:absolute;top:36px;right:32px;z-index:2;display:inline-flex;align-items:center;justify-content:flex-end;gap:6px}.stage-overlay-toggle{min-height:34px;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:#f4fbf7;background:#08271d94;box-shadow:0 12px 26px #03120d38;cursor:pointer;font-size:14px;line-height:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .14s ease,background .14s ease,border-color .14s ease}.stage-overlay-toggle:hover{transform:translateY(-1px);background:#0f4131b8}.stage-overlay-toggle:has(input:disabled){opacity:.5;cursor:not-allowed;border-style:dashed}.stage-overlay-toggle:has(input:disabled):hover{transform:none;background:#08271d94}.stage-overlay-toggle:has(input:checked){border-color:#ffffff4d;background:var(--accent)}.stage-overlay-toggle:has(input:checked) input{background:#fff}#tacticsCanvas,.three-stage{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1}#tacticsCanvas{display:block;cursor:grab;touch-action:none}.board-snapshot{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none}.stage-frame.has-board-snapshot .board-snapshot{opacity:1}.stage-frame.has-board-snapshot #tacticsCanvas{opacity:0;pointer-events:none}#tacticsCanvas.is-player-hover,#tacticsCanvas.is-ball-hover{cursor:pointer}#tacticsCanvas.is-selected-player-hover{cursor:move}#tacticsCanvas.is-dragging,#tacticsCanvas.is-panning{cursor:grabbing}#tacticsCanvas.is-guide-line-mode,#tacticsCanvas.is-guide-drawing{cursor:crosshair}#tacticsCanvas.is-guide-erase-mode{cursor:cell}#tacticsCanvas.is-panning{cursor:grabbing}.three-stage{display:none;background:#87b8dd;cursor:default;touch-action:none}.three-stage.is-roaming{cursor:grabbing}.three-stage canvas{width:100%;height:100%;display:block}.stage-frame.first-person #tacticsCanvas,.stage-frame.three-d #tacticsCanvas{display:none}.stage-frame.first-person .three-stage,.stage-frame.three-d .three-stage{display:block;bottom:var(--timeline-occlusion-bottom);height:auto}.stage-frame.first-person .three-stage,.stage-frame.three-d .three-stage{cursor:grab}.timeline-panel{--timeline-axis-inset: 13px;--timeline-thumb-offset: -9px;--timeline-thumb-size: 26px;--timeline-track-height: 8px;position:absolute;z-index:3;left:18px;right:18px;bottom:18px;padding:10px 12px 12px;border:1px solid rgba(255,255,255,.32);border-radius:8px;display:grid;grid-template-columns:auto minmax(220px,.85fr) minmax(180px,1fr) auto;grid-template-areas:"visibility visibility visibility visibility" "start playback track end" "control control control control" "preview preview preview preview" "keyframes keyframes keyframes keyframes";align-items:center;gap:7px 10px;background:#0c1e17b8;color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.time-readout{display:contents;font-variant-numeric:tabular-nums;color:#ffffffd6;font-size:13px}#currentTime{grid-area:start;position:relative;z-index:2}.time-endcap{grid-area:end;position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.timeline-detail-button{height:26px;padding:0 8px;border:1px solid rgba(255,255,255,.28);border-radius:8px;display:inline-flex;align-items:center;gap:5px;color:#fff;background:#ffffff24;cursor:pointer;font-size:12px;font-weight:850;white-space:nowrap}.timeline-detail-button svg{width:14px;height:14px;stroke-width:2.4}.timeline-detail-button:hover{background:#ffffff3d}.timeline-detail-button[hidden]{display:none}.share-preview-controls{grid-area:preview;display:inline-flex;align-items:center;gap:8px;color:#ffffffdb;font-size:12px;font-weight:800}.share-preview-controls[hidden]{display:none}.share-preview-title{max-width:240px;min-width:0;overflow:hidden;color:#fff;text-overflow:ellipsis;white-space:nowrap}.share-preview-controls label{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.share-preview-controls .preview-display-toggle{min-height:28px;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:0 9px;color:#f4fbf7;background:#08271d94;box-shadow:0 8px 18px #03120d2e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.share-preview-controls .preview-display-toggle:has(input:disabled){opacity:.5;cursor:not-allowed;border-style:dashed}.share-preview-controls .preview-display-toggle:has(input:checked){color:#fff;border-color:#ffffff4d;background:var(--accent)}.share-preview-controls .preview-display-toggle input:checked{background:#fff}.timeline-speed-control select,.timeline-duration-control input,.share-preview-controls select{height:28px;padding:0 8px;border:1px solid rgba(255,255,255,.3);border-radius:8px;color:#fff;background:#ffffff24;cursor:pointer;font-weight:850}.timeline-speed-control select{min-width:94px}.timeline-duration-control input{width:76px;color-scheme:dark}.timeline-speed-control option,.share-preview-controls option{color:var(--ink)}.share-preview-controls input{width:14px;height:14px;accent-color:var(--accent)}.track-label{min-width:0;overflow:hidden;color:#fff;font-weight:800;text-align:center;text-overflow:ellipsis;white-space:nowrap}.timeline-track-readout{grid-column:1 / -1;grid-row:2;position:relative;min-width:0;min-height:36px;display:grid;align-items:center;justify-self:stretch;justify-content:center;pointer-events:none}.timeline-track-readout .track-label{position:absolute;left:50%;transform:translate(-50%);justify-self:center;max-width:clamp(120px,calc(100% - 520px),420px)}.timeline-track-readout .timeline-duration-control{position:absolute;right:54px;top:50%;transform:translateY(-50%);pointer-events:auto}input[type=range]{width:100%;accent-color:var(--accent)}.timeline-playback-controls{grid-area:playback;position:relative;z-index:2;justify-self:start;display:inline-flex;align-items:center;gap:8px;min-width:0}.timeline-speed-control,.timeline-duration-control{min-width:0;justify-self:start;display:inline-flex;align-items:center;gap:8px;color:#ffffffd1;font-size:12px;font-weight:800}.timeline-duration-control{white-space:nowrap}.timeline-loop-toggle{min-height:28px;border:1px solid rgba(255,255,255,.22);border-radius:8px;padding:0 9px;display:inline-flex;align-items:center;gap:7px;color:#ffffffdb;background:#ffffff1a;font-size:12px;font-weight:800;white-space:nowrap}.timeline-loop-toggle input{width:14px;height:14px;margin:0;accent-color:var(--accent)}.timeline-control{grid-area:control;position:relative;z-index:3;display:grid;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;gap:8px;overflow:visible}.timeline-range-shell{position:relative;z-index:3;min-width:0;height:36px;overflow:visible;touch-action:none;user-select:none;-webkit-user-select:none}.timeline-range-shell:before{position:absolute;left:var(--timeline-axis-inset);right:var(--timeline-axis-inset);top:50%;height:var(--timeline-track-height);border-radius:999px;background:#ffffffd1;content:"";transform:translateY(-50%)}.timeline-jump-button{position:relative;z-index:1;width:36px;height:36px;border:1px solid rgba(255,255,255,.28);border-radius:8px;display:grid;place-items:center;color:#fff;background:#ffffff24;cursor:pointer}.timeline-jump-button:hover{background:#ffffff3d}.timeline-jump-button svg{width:17px;height:17px;stroke-width:2.5}#timeline{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;height:36px;margin:0;width:auto;background:transparent;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}#timeline::-webkit-slider-runnable-track{height:var(--timeline-track-height);border-radius:999px;background:transparent}#timeline::-webkit-slider-thumb{width:var(--timeline-thumb-size);height:var(--timeline-thumb-size);margin-top:var(--timeline-thumb-offset);border:0;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px #108a7333;-webkit-appearance:none;-moz-appearance:none;appearance:none}#timeline::-moz-range-track{height:var(--timeline-track-height);border-radius:999px;background:transparent}#timeline::-moz-range-thumb{width:var(--timeline-thumb-size);height:var(--timeline-thumb-size);border:0;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px #108a7333}.keyframe-track-row{grid-area:keyframes;position:relative;z-index:1;display:grid;grid-template-columns:36px minmax(0,1fr) 36px;gap:8px}.keyframe-track-row .keyframe-strip{grid-column:2}.keyframe-strip{--keyframe-pin-rise: 20px;position:relative;height:50px;margin:0 var(--timeline-axis-inset);overflow:visible}.keyframe-strip:before{content:none}.keyframe-strip-playhead{position:absolute;top:calc(var(--keyframe-pin-rise) * -1);bottom:2px;left:var(--keyframe-playhead-left);z-index:1;width:2px;background:#ffd86cdb;pointer-events:none}.keyframe-marker{position:absolute;top:0;bottom:0;z-index:2;width:0}.keyframe-pin{position:absolute;left:0;top:calc(var(--keyframe-pin-rise) * -1);width:2px;height:calc(var(--keyframe-pin-rise) + 16px);border-radius:999px;background:#ffffffb3;transform:translate(-50%)}.keyframe-chip{position:relative;top:16px;width:72px;height:42px;border:1px solid rgba(255,255,255,.26);border-radius:8px;background:#ffffff1f;color:#fff;font-weight:850;line-height:1;overflow:hidden;cursor:pointer;transform:translate(var(--chip-shift, -50%))}.keyframe-chip:hover{background:#fff3}.keyframe-chip.dragging{z-index:3;border-color:#ffd86c;background:#ffd86ce6;color:#22352c;box-shadow:0 10px 24px #0000003d}.keyframe-select{width:100%;height:100%;padding:5px 18px 5px 6px;display:grid;align-content:center;justify-items:center;color:inherit;background:transparent;cursor:pointer;font-weight:inherit;line-height:inherit;touch-action:none}.keyframe-chip small{margin-top:2px;color:#ffffffc2;font-size:10px;font-weight:750}.keyframe-chip.current{border-color:#ffd86c;box-shadow:inset 0 0 0 1px #ffd86c57}.keyframe-chip.editing{border-color:#ffd86c;background:#ffd86c;color:#22352c;cursor:ew-resize}.keyframe-chip.editing .keyframe-select{cursor:ew-resize}.keyframe-chip.editing small,.keyframe-chip.dragging small{color:#22352cb8}.keyframe-delete{position:absolute;top:3px;right:3px;width:17px;height:17px;border-radius:50%;display:grid;place-items:center;color:#ffffffd1;background:#0000002e;cursor:pointer}.keyframe-delete svg{width:10px;height:10px;stroke-width:2.5}.keyframe-delete:hover{color:#fff;background:var(--danger)}.keyframe-delete:disabled{opacity:.28;cursor:not-allowed}.keyframe-chip.editing .keyframe-delete{color:#22352cb8;background:#22352c1f}.keyframe-chip.editing .keyframe-delete:hover{color:#fff;background:var(--danger)}.visibility-row{grid-area:visibility;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px}.visibility-label{color:#ffffffd6;font-size:12px;font-weight:850;white-space:nowrap}.visibility-strip{display:flex;gap:6px;min-width:0;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.show-all-button{height:32px;padding:0 9px;border:1px solid rgba(255,255,255,.28);border-radius:8px;color:#fff;background:#ffffff24;cursor:pointer;font-size:12px;font-weight:850;white-space:nowrap}.show-all-button:not(:disabled):hover{background:#ffffff3d}.show-all-button:disabled{opacity:.42;cursor:not-allowed}.visibility-button{position:relative;flex:0 0 auto;min-width:32px;max-width:64px;height:32px;padding:0 8px;border:1px solid rgba(255,255,255,.28);border-radius:999px;display:grid;place-items:center;color:#fff;cursor:pointer;font-size:12px;font-weight:900;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:opacity .14s ease,transform .14s ease,border-color .14s ease,filter .14s ease}.visibility-button:hover{transform:translateY(-1px)}.visibility-button.home{background:var(--player-color, var(--home))}.visibility-button.away{background:var(--player-color, var(--away))}.visibility-button.goalkeeper.home{background:var(--player-color, #d74c86)}.visibility-button.goalkeeper.away{background:var(--player-color, #1aa6c8)}.visibility-button.hidden{opacity:.82;filter:saturate(.55)}.visibility-button.hidden:after{position:absolute;left:4px;right:4px;top:50%;height:3px;border-radius:999px;background:#ffffffe6;content:"";transform:rotate(-35deg)}.visibility-button.hidden:before{position:absolute;right:2px;bottom:1px;z-index:1;min-width:13px;height:13px;border-radius:999px;display:grid;place-items:center;background:#18241ed1;color:#fff;content:"隐";font-size:9px;line-height:1}body.share-preview{height:100dvh;overflow:hidden}body.share-preview .app-shell{height:100%;min-height:0;grid-template-rows:auto minmax(0,1fr)}body.share-preview .topbar{grid-template-columns:minmax(160px,max-content) minmax(0,1fr);gap:18px;padding:12px 18px;border-bottom:1px solid var(--line)}body.share-preview .topbar:after{display:none}body.share-preview .brand{align-self:center;justify-self:start;width:auto;padding:0;border-right:0;background:transparent}body.share-preview .brand span:last-child{display:none}body.share-preview .brand:after{content:"分享预览";font-size:18px;font-weight:850}body.share-preview .workspace{min-height:0;height:100%;grid-template-columns:1fr}body.share-preview .clip-sidebar,body.share-preview .inspector,body.share-preview #undoBtn,body.share-preview #redoBtn,body.share-preview #recordBtn,body.share-preview #shareBtn,body.share-preview .topbar-center,body.share-preview #aiMatchAnalysisBtn,body.share-preview #resetBtn,body.share-preview #clearBtn,body.share-preview .timeline-detail-button,body.share-preview .keyframe-track-row,body.share-preview .keyframe-strip{display:none}body.share-preview .transport{min-width:0;justify-content:flex-end;flex-wrap:nowrap}body.share-preview .save-status{color:var(--accent-strong);font-weight:850}body.share-preview .stage-area{min-height:0;height:100%;padding:0}body.share-preview .stage-frame{min-height:0;height:100%}body.share-preview .timeline-panel{left:16px;right:16px;bottom:16px;min-width:0;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"visibility visibility visibility" "start track end" "control control control" "preview preview preview";overflow:hidden}body.share-preview .timeline-playback-controls,body.share-preview .timeline-duration-control,body.share-preview .share-preview-controls .preview-display-toggle{display:none}.inspector{min-width:0;overflow:auto;padding:18px 16px 20px;border-left:1px solid var(--line);background:var(--panel)}.control-section{padding:0 0 18px;margin:0 0 18px;border-bottom:1px solid var(--line)}.control-section:last-child{border-bottom:0}.section-title,.match-team-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:800;color:#2b3933}.section-title{margin-bottom:12px}.section-title-main{min-width:0;display:inline-flex;align-items:center;gap:8px}.section-action-button{min-height:32px;margin-left:auto;padding:0 10px;border-radius:8px;display:inline-flex;align-items:center;gap:6px;color:var(--accent-strong);background:#dbece5;cursor:pointer;font-size:13px;font-weight:850}.section-action-button:hover{color:#fff;background:var(--accent)}.section-action-button:disabled{opacity:.42;cursor:not-allowed}.clip-add-button{min-height:30px;padding:0 9px;border-radius:8px;font-size:12px}.clip-add-button svg{width:15px;height:15px}.count-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-bottom:10px}.layout-mode-control,.field-profile-control{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin-bottom:10px;color:#52645b;font-size:13px;font-weight:900}.layout-mode-control select,.field-profile-control select{width:100%;height:38px;border:1px solid var(--line);border-radius:8px;padding:0 36px 0 12px;color:var(--ink);background:#f8fbf8;cursor:pointer;font-size:14px;font-weight:900}.section-title .section-action-button+.section-action-button{margin-left:6px}.formation-controls[hidden]{display:none}.count-tab{height:34px;border-radius:8px;display:grid;place-items:center;background:#e8eee9;color:#34443c;cursor:pointer;font-size:13px;font-weight:800}.count-tab.active{color:#fff;background:var(--accent)}.formation-grid{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:7px 8px;color:var(--muted);font-size:13px}.formation-picker{position:relative;min-width:0}.formation-picker-button,.formation-picker-option{width:100%;min-width:0;min-height:42px;border:1px solid var(--line);border-radius:8px;padding:5px 34px 5px 10px;display:grid;grid-template-columns:minmax(0,1fr) 72px;align-items:center;gap:10px;color:var(--ink);background:#fff;cursor:pointer;font-size:14px;font-weight:850;text-align:left}.formation-picker-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.formation-picker-chevron{position:absolute;right:12px;top:50%;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-68%) rotate(45deg)}.formation-picker-menu{position:absolute;z-index:40;left:0;right:0;top:calc(100% + 5px);max-height:270px;padding:5px;border:1px solid rgba(7,55,42,.18);border-radius:8px;overflow:auto;background:#fff;box-shadow:0 18px 36px #0c1f1833}.formation-picker-menu[hidden]{display:none}.formation-picker-option{min-height:52px;border:0;border-radius:7px;padding-right:10px;background:transparent}.formation-picker-option:hover,.formation-picker-option.is-selected{background:#e6f0e9}.formation-preview{width:72px;height:32px;border:1px solid rgba(15,127,104,.18);border-radius:6px;display:grid;grid-template-columns:repeat(var(--formation-lines),minmax(0,1fr));align-items:stretch;background:linear-gradient(90deg,rgba(15,127,104,.08) 1px,transparent 1px),#edf8f3d1;background-size:24px 100%}.formation-preview-line{min-width:0;padding:4px 0;display:flex;flex-direction:column;align-items:center;justify-content:space-around}.formation-preview-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 1px #ffffffdb}.quick-setup-row{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:8px 10px;margin-top:10px;color:var(--muted);font-size:13px}.phase-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.phase-tab{height:34px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#e8eee9;color:#34443c;cursor:pointer;font-size:13px;font-weight:800}.phase-tab.active{color:#fff;background:var(--accent)}.phase-tab:disabled{opacity:.42;cursor:not-allowed}.match-team-title{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.match-team-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:7px;margin-top:6px;color:var(--muted);font-size:12px;font-weight:900}.match-team-row select{width:100%;min-width:0;height:34px;border:1px solid var(--line);border-radius:8px;padding:0 26px 0 9px;color:var(--ink);background:#f8fbf8;cursor:pointer;font-size:12px;font-weight:850}.wide-action{width:100%;height:38px;margin-top:10px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#fff;background:var(--accent);cursor:pointer;font-weight:800}.wide-action.secondary{color:var(--accent-strong);background:#dbece5}.wide-action:hover{background:var(--accent-strong)}.wide-action.secondary:hover{color:#fff}.wide-action svg{width:17px;height:17px}.ai-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.clip-prompt{width:100%;min-height:72px;margin-top:10px;padding:9px 10px;resize:vertical;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);line-height:1.45}.clip-prompt::placeholder{color:#89958e}.clip-list{display:grid;gap:8px;margin-top:10px}.clip-item{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-items:stretch;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff}.clip-item-formation{border-color:#efd9ce;background:#fff8f4}.clip-item-free{border-color:#cfe7ed;background:#f5fbfd}.clip-item.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent),0 8px 18px #0f7f681f}.clip-item-formation.active{border-color:#e2a283;box-shadow:inset 0 0 0 1px #e2a283,0 8px 18px #be5f301f}.clip-item-free.active{border-color:#1596a3;box-shadow:inset 0 0 0 1px #1596a3,0 8px 18px #1596a31f}.clip-summary{min-width:0;display:grid;gap:3px}.clip-title-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px}.clip-name{min-width:0;overflow:hidden;font-weight:800;color:var(--ink);line-height:1.28;text-overflow:ellipsis;white-space:nowrap}.clip-title-edit-button{width:24px;height:24px;padding:0;border:1px solid transparent;border-radius:8px;display:inline-grid;place-items:center;align-self:center;color:#087563;background:#e6f3ee;cursor:pointer;line-height:0}.clip-title-edit-button:hover,.clip-title-edit-button:focus-visible{border-color:#0f7f6857;background:#d7ece5}.clip-title-edit-button i,.clip-title-edit-button svg{width:13px;height:13px;display:block;stroke-width:2.3}.clip-name-inline-input{grid-column:1 / -1;width:100%;min-width:0;height:32px;padding:0 9px;border:1px solid rgba(15,127,104,.42);border-radius:8px;outline:none;color:var(--ink);background:#fff;font:inherit;font-weight:850}.clip-name-inline-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0f7f681f}.clip-meta{min-width:0;overflow:hidden;color:var(--muted);font-size:12px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.clip-actions{display:inline-flex;justify-content:flex-end;gap:6px}.clip-actions .icon-button{width:32px;min-height:32px}.clip-edit-icon{width:17px;height:17px;display:block}.ai-brief{min-height:96px;margin-top:10px;padding:10px;border-radius:8px;background:#fff;border:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.45}.ai-brief strong{display:block;margin-bottom:6px;color:var(--ink);font-size:14px}.ai-brief ul{margin:0;padding-left:17px}.ai-brief li+li{margin-top:3px}.roster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.roster-button{position:relative;height:38px;border-radius:8px;background:#e8eee9;color:#2b3933;display:grid;place-items:center;cursor:pointer;font-weight:800;border:2px solid transparent}.roster-link-icon{position:absolute;top:4px;right:4px;width:12px;height:12px;padding:2px;border-radius:50%;color:#fff;background:var(--player-color, var(--accent));stroke-width:3;box-sizing:content-box}.roster-button.linked{border-color:#0f80685c}.roster-button.home{background:color-mix(in srgb,var(--player-color, var(--home)) 16%,#ffffff);color:color-mix(in srgb,var(--player-color, var(--home)) 72%,#10251d)}.roster-button.away{background:color-mix(in srgb,var(--player-color, var(--away)) 16%,#ffffff);color:color-mix(in srgb,var(--player-color, var(--away)) 72%,#10251d)}.roster-button.home.goalkeeper{color:color-mix(in srgb,var(--player-color, #d74c86) 72%,#10251d);background:color-mix(in srgb,var(--player-color, #d74c86) 18%,#ffffff)}.roster-button.away.goalkeeper{color:color-mix(in srgb,var(--player-color, #1aa6c8) 72%,#10251d);background:color-mix(in srgb,var(--player-color, #1aa6c8) 18%,#ffffff)}.roster-button.ball{--player-color: #f6c34f;background:color-mix(in srgb,var(--player-color) 16%,#ffffff);color:#7d5712}.roster-button.roster-button.is-hidden{color:color-mix(in srgb,var(--player-color, var(--accent)) 58%,#596760);background:color-mix(in srgb,var(--player-color, var(--accent)) 10%,#f4f7f5);border-color:color-mix(in srgb,var(--player-color, var(--accent)) 34%,rgba(76,91,84,.34));filter:saturate(.56);opacity:.84}.roster-button.is-hidden:after{position:absolute;left:8px;right:8px;top:50%;height:3px;border-radius:999px;background:#2a3630b8;content:"";transform:rotate(-28deg)}.roster-button.is-hidden:before{position:absolute;right:4px;bottom:3px;z-index:1;padding:1px 4px;border-radius:999px;background:#2a3630c7;color:#fff;content:"隐";font-size:10px;line-height:1.2}.roster-ball-icon{width:22px;height:22px;display:block;object-fit:contain}.roster-button.active{border-color:transparent;outline:2px solid var(--player-color, var(--accent));outline-offset:2px;box-shadow:none}.bench-panel{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.bench-head{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#2b3933;font-size:13px;font-weight:850}.bench-add-button{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;color:#fff;background:var(--accent);cursor:pointer}.bench-add-button:hover{background:var(--accent-strong)}.bench-add-button:disabled{opacity:.42;cursor:not-allowed}.bench-add-button svg{width:18px;height:18px}.bench-roster{min-height:38px;margin-top:8px;display:flex;flex-wrap:wrap;gap:7px}.bench-player-chip{min-height:34px;max-width:100%;padding:0 9px;border:1px solid var(--line);border-radius:8px;display:inline-flex;align-items:center;gap:7px;color:var(--ink);background:#fff;font-size:12px;font-weight:800}.bench-player-chip.home{border-color:#e5484852}.bench-player-chip.away{border-color:#246bd752}.bench-player-number{min-width:22px;height:22px;padding:0 5px;border-radius:999px;display:inline-grid;place-items:center;color:#fff;background:var(--home);font-size:11px;font-weight:900}.bench-player-chip.away .bench-player-number{background:var(--away)}.bench-player-chip.home.goalkeeper .bench-player-number{background:#d74c86}.bench-player-chip.away.goalkeeper .bench-player-number{background:#1aa6c8}.bench-player-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bench-player-delete{width:24px;height:24px;margin-left:1px;border:0;border-radius:8px;display:inline-grid;place-items:center;color:#9b2f2f;background:#e548481a;cursor:pointer}.bench-player-delete svg{width:14px;height:14px}.bench-player-delete:hover{color:#fff;background:var(--danger)}.bench-empty{min-height:34px;padding:8px 10px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);background:#ffffff7a;font-size:12px}.selected-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;padding:10px;margin-bottom:12px;border-radius:8px;background:var(--panel-strong);border:1px solid var(--line)}.selected-slot-summary{min-height:40px;margin-bottom:10px;padding:9px 11px;border:1px solid rgba(15,128,104,.22);border-radius:8px;display:grid;align-items:center;color:var(--accent-strong);background:#f7fbf8;font-size:14px;font-weight:900}.selected-slot-summary[hidden],.selected-card[hidden]{display:none}.free-object-controls{display:grid;gap:12px;margin-bottom:12px}.free-object-controls[hidden]{display:none}.free-object-field{display:grid;gap:7px;color:#52645b;font-size:12px;font-weight:850}.free-object-field input{width:100%;min-width:0;height:38px;border:1px solid var(--line);border-radius:8px;padding:0 11px;color:var(--ink);background:#fff;font-size:14px;font-weight:850}.free-object-field input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #0f80681f}.free-object-color-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.free-object-color-choice{height:34px;border:1px solid var(--line);border-radius:8px;display:grid;place-items:center;background:#fff;cursor:pointer}.free-object-color-choice span{width:18px;height:18px;border:1px solid rgba(35,49,42,.18);border-radius:50%}.free-object-color-choice.active{border-color:var(--accent);box-shadow:0 0 0 3px #0f80681f}.selected-attributes[hidden]{display:none}.selected-attributes{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.selected-attributes span{min-width:0;min-height:28px;padding:0 8px;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:5px;color:#45594f;background:#f1f6f2;font-size:12px;font-weight:850}.selected-attributes strong{color:var(--ink);font-size:13px;font-weight:950}.selected-card>div:nth-child(2){min-width:0}.selected-badge{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-weight:900;color:#fff;background:var(--player-color, var(--home))}.selected-badge.away{background:var(--player-color, var(--away))}.selected-badge.home.goalkeeper{background:var(--player-color, #d74c86)}.selected-badge.away.goalkeeper{background:var(--player-color, #1aa6c8)}.selected-badge.ball{color:#392712;background:var(--ball)}.selected-name{overflow:hidden;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.selected-meta{overflow:hidden;margin-top:3px;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.toggle-row{display:inline-flex;align-items:center;gap:8px;margin-top:13px;color:var(--muted);font-size:13px}.toggle-row input{width:16px;height:16px;accent-color:var(--accent)}.event-log{min-height:56px;margin-top:10px;padding:10px;border-radius:8px;border:1px solid var(--line);color:var(--muted);background:#fff;font-size:13px;line-height:1.45}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:18px;background:#101f1961;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-backdrop[hidden]{display:none}.modal-backdrop.nested{z-index:80;background:#0d1d165c}#confirmDialog{z-index:40}.timeline-backdrop{z-index:22}#shareLinkDialog{place-items:center;overflow:auto}#shareLinkDialog.has-share-qr{place-items:center}#shareLinkDialog.has-share-qr .share-link-dialog{width:min(1120px,calc(100vw - 36px))}.confirm-dialog{width:min(420px,100%);padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--panel-strong);box-shadow:0 24px 70px #101f1947}.share-link-dialog{width:min(1120px,calc(100vw - 36px));height:80dvh;max-height:calc(100dvh - 20px);padding:16px;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;align-content:stretch;gap:12px;overflow:hidden;background:var(--panel-strong);box-shadow:0 24px 70px #101f1947}.share-link-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.share-link-actions{display:inline-flex;align-items:center;gap:8px}.share-dialog-actions{align-items:center;justify-content:space-between;margin-top:0;padding-top:2px}.share-device-switch{height:34px;padding:3px;border:1px solid var(--line);border-radius:8px;display:inline-flex;gap:3px;background:#e4ebe6}.share-device-button{min-width:54px;padding:0 10px;border-radius:6px;color:var(--muted);background:transparent;cursor:pointer;font-size:12px;font-weight:850}.share-device-button.active{color:#fff;background:var(--accent);box-shadow:0 6px 14px #0f7f682e}.confirm-dialog h2,.share-link-dialog h2{margin:0;font-size:18px;line-height:1.25}.share-link-dialog p{margin:6px 0 0;color:var(--muted);font-size:13px}.confirm-dialog p{margin:10px 0 0;color:var(--muted);font-size:14px;line-height:1.55}.share-link-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}.share-link-dialog textarea{width:100%;height:38px;min-height:38px;max-height:38px;padding:8px 10px;resize:none;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;font-size:12px;line-height:1.45}.share-qr-code[hidden]{display:none}.share-qr-code{position:fixed;z-index:21;width:124px;margin:0;pointer-events:none}.share-qr-card{width:124px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 18px 42px #101f192e}.share-qr-svg{width:106px;height:106px;border-radius:8px;display:block;background:#fff}.share-qr-bg{fill:#fff}.share-qr-modules{fill:#10231b}.share-frame-shell{min-height:0;height:100%;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#0f3024}.share-frame-shell iframe{width:100%;height:100%;min-height:0;border:0;display:block;background:#eef2ee}#shareLinkDialog[data-preview-device=mobile] .share-link-dialog,#shareLinkDialog.has-share-qr[data-preview-device=mobile] .share-link-dialog{width:min(430px,calc(100vw - 36px))}#shareLinkDialog[data-preview-device=mobile] .share-frame-shell{display:grid;place-items:center;height:100%}#shareLinkDialog[data-preview-device=mobile] .share-frame-shell iframe{width:100%;max-width:100%;height:100%}#shareLinkDialog[data-preview-device=miniprogram] .share-link-dialog{width:min(520px,calc(100vw - 36px))}#shareLinkDialog[data-preview-device=miniprogram] .share-link-field,#shareLinkDialog[data-preview-device=miniprogram] .share-dialog-command-actions{display:none}#shareLinkDialog[data-preview-device=miniprogram] .share-frame-shell{display:grid;place-items:center;min-height:360px;background:linear-gradient(180deg,#eef4f2,#fff)}.mini-program-qr-panel[hidden],.share-frame-shell iframe[hidden]{display:none}.mini-program-qr-panel{display:grid;place-items:center;width:100%;height:100%;padding:24px}.mini-program-qr-card{display:grid;justify-items:center;gap:10px;padding:20px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 16px 42px #101f1924}.mini-program-qr-card .share-qr-svg{width:196px;height:196px}.mini-program-qr-title{color:var(--ink);font-size:17px;font-weight:900;line-height:1.2}.mini-program-qr-meta{color:var(--muted);font-size:13px;font-weight:750;line-height:1.2}.confirm-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.confirm-actions.share-dialog-actions{align-items:center;justify-content:space-between;margin-top:0}.share-dialog-command-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.dialog-button{min-width:92px;height:38px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;font-weight:800}.dialog-button.compact{min-width:78px;padding:0 10px}.dialog-button svg{width:16px;height:16px;stroke-width:2.5}.dialog-button:disabled{opacity:.58;cursor:not-allowed}.dialog-button.secondary{color:var(--ink);background:#e8eee9}.dialog-button.primary{color:#fff;background:var(--accent)}.dialog-button.danger{color:#fff;background:var(--danger)}.dialog-button:hover{transform:translateY(-1px)}.timeline-dialog{width:min(1080px,calc(100vw - 36px));max-height:min(78vh,720px);border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:var(--panel-strong);box-shadow:0 24px 70px #101f194d}.timeline-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px 14px;border-bottom:1px solid var(--line);background:#fff}.timeline-dialog-head h2{margin:0;font-size:18px;line-height:1.25}.timeline-dialog-head p{margin:6px 0 0;color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}.timeline-dialog-head .icon-button{flex:0 0 auto}.timeline-detail-view{min-height:340px;padding:0 16px 16px;overflow:auto;background:#f6faf5;cursor:grab}.timeline-detail-view.is-panning{cursor:grabbing;-webkit-user-select:none;user-select:none}.timeline-detail-view button{cursor:pointer}.player-profile-dialog{width:min(820px,calc(100vw - 36px));max-height:min(90dvh,760px);border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:var(--panel-strong);box-shadow:0 24px 70px #101f194d}.player-manager-dialog{width:min(1280px,calc(100vw - 28px));height:min(92dvh,900px);max-height:min(92dvh,900px);border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:var(--panel-strong);box-shadow:0 24px 70px #101f194d}.player-usage-dialog{width:min(620px,calc(100vw - 36px));max-height:min(80dvh,620px);border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:var(--panel-strong);box-shadow:0 24px 70px #101f194d}.ai-match-dialog{width:min(760px,calc(100vw - 36px));max-height:80dvh;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:var(--panel-strong);box-shadow:0 24px 70px #101f194d}.new-clip-dialog{width:min(760px,calc(100vw - 36px));max-height:min(88dvh,760px);border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:var(--panel-strong);box-shadow:0 24px 70px #101f194d}.new-clip-body{min-height:0;padding:16px;display:grid;gap:14px;overflow:auto;background:#f6faf5}.new-clip-section{display:grid;gap:10px}.new-clip-section-title{color:#22352c;font-size:13px;font-weight:900}.new-clip-mode-tabs,.new-clip-count-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(82px,1fr));gap:8px}.new-clip-mode-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.new-clip-mode-tab,.new-clip-count-tab{height:38px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fff;cursor:pointer;font-size:13px;font-weight:900}.new-clip-mode-tab.active,.new-clip-count-tab.active{border-color:#0f7f686b;color:#fff;background:var(--accent);box-shadow:0 8px 18px #0f7f682e}.new-clip-tactic-list{display:grid;gap:10px}.new-clip-tactic-card{width:100%;min-height:82px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;display:grid;gap:6px;color:var(--ink);background:#fff;cursor:pointer;text-align:left}.new-clip-tactic-card:hover,.new-clip-tactic-card:focus-visible{border-color:#0f7f6866;box-shadow:0 8px 18px #101f1914}.new-clip-tactic-card.active{border-color:#0f7f6894;background:#eef8f3;box-shadow:inset 3px 0 0 var(--accent)}.new-clip-tactic-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.new-clip-tactic-name{min-width:0;color:var(--ink);font-size:15px;font-weight:950;line-height:1.25}.new-clip-tactic-tags{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:5px}.new-clip-tactic-tags span{padding:3px 7px;border-radius:6px;color:#0d6b5c;background:#dceee8;font-size:11px;font-weight:850;line-height:1.25}.new-clip-tactic-summary{display:block;color:#31443a;font-size:13px;line-height:1.42;font-weight:800}.new-clip-actions{margin-top:0;padding:12px 16px;border-top:1px solid var(--line);background:#fff}.ai-match-body{min-height:0;overflow:auto;padding:16px;background:#f6faf5}.ai-match-dialog-actions{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px}.ai-match-state{min-height:260px;display:grid;place-items:center;color:var(--muted);font-weight:800;text-align:center}.ai-match-state.error{color:var(--danger)}.ai-match-result{display:grid;gap:14px}.ai-match-score-card{min-height:104px;padding:14px;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:94px minmax(0,1fr);align-items:center;gap:14px;background:#fff}.ai-match-score{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--score-soft),var(--score-color));box-shadow:inset 0 -12px 22px #0000001f,0 10px 22px #101f1929;font-size:24px;font-weight:900;font-variant-numeric:tabular-nums}.ai-match-summary h3,.ai-match-section h3{margin:0;color:#22352c;font-size:14px;line-height:1.35}.ai-match-summary p{margin:7px 0 0;color:var(--muted);font-size:13px;line-height:1.55}.ai-match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ai-match-section{padding:13px;border:1px solid var(--line);border-radius:8px;background:#fff}.ai-match-section ul{margin:9px 0 0;padding:0;list-style:none;display:grid;gap:8px}.ai-match-section li{position:relative;padding-left:14px;color:#3e4c45;font-size:13px;line-height:1.5}.ai-match-section li:before{position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--accent);content:""}.ai-match-rows{display:grid;gap:10px}.ai-match-row-list{display:grid;gap:8px}.ai-match-row{min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;background:#f8fbf7}.ai-match-row-main{min-width:0;display:grid;grid-template-columns:88px 72px minmax(0,1fr);align-items:center;justify-items:start;gap:12px}.ai-match-slot-name{width:fit-content;max-width:100%;min-height:26px;padding:4px 9px;border:1px solid rgba(15,128,104,.24);border-radius:999px;display:inline-flex;align-items:center;color:var(--ink);background:#fff;font-size:15px;line-height:1.15;font-weight:950}.ai-match-player-name{display:inline-flex;align-items:center;min-width:0;color:var(--muted);font-size:13px;line-height:1.35;font-weight:780}.ai-match-row-score{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;align-self:center;color:#fff;background:var(--score-color);font-size:17px;font-weight:950;line-height:1;font-variant-numeric:tabular-nums}.ai-match-row p{margin:0;min-width:0;text-align:left;color:#3e4c45;font-size:12px;line-height:1.5}.clip-json-dialog{width:min(920px,calc(100vw - 36px));max-height:min(90dvh,760px);border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:var(--panel-strong);box-shadow:0 24px 70px #101f194d}.gm-template-dialog{width:min(1040px,calc(100vw - 36px));height:min(86dvh,760px);border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:var(--panel-strong);box-shadow:0 24px 70px #101f194d}.gm-template-body{min-height:0;display:grid;grid-template-columns:280px minmax(0,1fr);background:#f6faf5}.gm-template-list-panel{min-height:0;border-right:1px solid var(--line);display:grid;grid-template-rows:minmax(0,1fr) auto;background:#edf6f1}.gm-template-list{min-height:0;padding:12px;overflow:auto;display:grid;align-content:start;gap:8px}.gm-template-list-item{width:100%;min-height:64px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;display:grid;align-content:center;gap:4px;color:var(--ink);background:#fff;text-align:left;cursor:pointer}.gm-template-list-item:hover,.gm-template-list-item.active{border-color:var(--accent);box-shadow:0 8px 18px #0f7f681f}.gm-template-list-item strong,.gm-template-list-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gm-template-list-item span{color:var(--muted);font-size:12px}.gm-template-list-actions{padding:12px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:8px}.gm-template-list-actions .dialog-button:first-child{grid-column:1 / -1}.gm-template-editor{min-height:0;padding:14px;overflow:auto;display:grid;align-content:start;gap:12px}.gm-template-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gm-template-editor label{min-width:0;display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.gm-template-editor input,.gm-template-editor select,.gm-template-editor textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;font:inherit}.gm-template-editor input,.gm-template-editor select{height:38px;padding:0 10px}.gm-template-editor textarea{min-height:76px;padding:10px;resize:vertical;line-height:1.5}.gm-template-inline-actions,.gm-template-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.gm-template-status{margin-right:auto;color:var(--muted);font-size:12px}.gm-template-status.error{color:var(--danger)}.gm-template-empty{min-height:220px;border:1px dashed var(--line);border-radius:8px;display:grid;place-items:center;color:var(--muted);background:#fff}.player-swap-dialog{width:min(760px,calc(100vw - 36px));height:80dvh;max-height:calc(100dvh - 36px);border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:var(--panel-strong);box-shadow:0 24px 70px #101f194d}.bench-player-dialog{width:min(440px,calc(100vw - 36px));border:1px solid var(--line);border-radius:8px;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:var(--panel-strong);box-shadow:0 24px 70px #101f194d}.player-profile-dialog-head{min-height:66px;padding:16px 18px 14px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:16px;background:#fff}.player-profile-dialog-head h2{margin:0;font-size:18px;line-height:1.25}.player-profile-dialog-head p{margin:6px 0 0;color:var(--muted);font-size:13px}.player-profile-dialog-head p:empty{display:none}.player-profile-dialog-head .icon-button{flex:0 0 auto}.player-manager-dialog .player-profile-dialog-head{align-items:center}.player-manager-dialog-title{min-width:0;display:flex;align-items:center;gap:9px}.player-manager-dialog-title>svg{width:22px;height:22px;color:var(--accent);stroke-width:2.4}.player-manager-dialog-title h2{line-height:1}.player-manager-dialog-title p{width:100%}.player-profile-editor-body{min-height:0;overflow:auto;padding:16px;background:#f6faf5}.player-manager-body{min-height:0;overflow:hidden;background:#f6faf5}.clip-json-viewer{min-height:0;margin:0;padding:16px;overflow:auto;border:0;color:#18362d;background:#f6faf5;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.55;-moz-tab-size:2;tab-size:2;white-space:pre}.clip-json-viewer:focus{outline:2px solid rgba(15,127,104,.28);outline-offset:-2px}.player-swap-body{min-height:0;overflow:auto;padding:14px;background:#f6faf5}.bench-player-form{padding:16px;display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:10px 12px;color:var(--muted);background:#f6faf5;font-size:13px}.bench-player-form input,.bench-player-form select{min-width:0;height:38px;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff}.bench-player-actions{grid-column:1 / -1;margin-top:4px;display:flex;justify-content:flex-end;gap:8px}.player-swap-list{display:grid;gap:8px}.player-swap-body:has(.player-swap-fixed-action){padding:0;display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden}.player-swap-scroll{min-height:0;overflow:auto;padding:14px}.fill-player-table-wrap{min-width:720px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.fill-player-table{width:100%;border-collapse:collapse;color:var(--ink);font-size:14px}.fill-player-table th{position:sticky;top:0;z-index:1;padding:0;border-bottom:1px solid var(--line);background:#eef8f2}.fill-player-table td{padding:10px 9px;border-bottom:1px solid rgba(203,218,207,.74);text-align:center;white-space:nowrap}.fill-player-table tbody tr:last-child td{border-bottom:0}.fill-player-table tbody tr{cursor:pointer}.fill-player-table tbody tr:hover,.fill-player-table tbody tr:focus{outline:none;background:#f1faf6}.fill-player-table tbody tr.bench{background:#fffaf0}.fill-player-table tbody tr.bench:hover,.fill-player-table tbody tr.bench:focus{background:#fff4d9}.fill-player-sort-button{width:100%;min-height:40px;padding:8px 9px;border:0;display:inline-flex;align-items:center;justify-content:center;gap:4px;color:#52635b;background:transparent;font-weight:850;cursor:pointer}.fill-player-sort-button:hover,.fill-player-sort-button.is-active{color:var(--accent);background:#0f806814}.fill-player-sort-arrow{width:16px;height:16px;flex:0 0 auto;display:grid;place-items:center;color:#52635b61}.fill-player-table th:nth-child(3) .fill-player-sort-button{justify-content:flex-start}.fill-player-table td:nth-child(3){text-align:left}.fill-player-source{min-height:22px;padding:3px 8px;border-radius:999px;display:inline-flex;align-items:center;color:#0e6f5b;background:#e7f3ee;font-size:12px;font-weight:800}.fill-player-source.bench{color:#8a5d00;background:#fff0bd}.fill-player-source.field{color:#174b91;background:#dfeafb}.fill-player-number{width:30px;height:30px;border-radius:50%;display:inline-grid;place-items:center;color:#fff;background:var(--home);font-weight:900}.fill-player-number.away{background:var(--away)}.player-swap-action-label{min-height:24px;padding:3px 8px;border-radius:999px;display:inline-flex;align-items:center;color:#0f604f;background:#e5f2ec;font-size:12px;font-weight:850}.fill-player-name{max-width:150px;overflow:hidden;text-align:left;text-overflow:ellipsis}.score-value{min-width:30px;min-height:24px;padding:3px 8px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-variant-numeric:tabular-nums}.score-level-1{color:#fff;background:#c83232}.score-level-2{color:#fff;background:#d97822}.score-level-3{color:#31431e;background:#d6e46a}.score-level-4{color:#fff;background:#45a51e}.score-level-5{color:#fff;background:#087f5b}.player-swap-fixed-action{border-top:1px solid var(--line);padding:10px 14px 12px;background:#f6faf5f5;box-shadow:0 -10px 22px #102a2014}.player-swap-option{width:100%;min-width:0;min-height:88px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:auto minmax(0,1fr) 72px;align-items:center;gap:12px;color:var(--ink);background:#fff;cursor:pointer;text-align:left}.player-swap-option:hover{border-color:var(--accent);box-shadow:0 8px 18px #0f7f6821}.player-swap-option.library{border-color:#0f806847;background:#f6fbf8}.player-swap-option.create{border-style:dashed;border-color:#1491709e;background:linear-gradient(90deg,#e4f4ed,#f5fbf8)}.player-swap-option.create:hover{border-color:#0f8068e0;background:linear-gradient(90deg,#d6eee4,#eff9f5)}.player-swap-option.create .swap-option-badge{background:var(--accent)}.player-swap-option.create .swap-option-source{color:#fff;background:var(--accent)}.swap-option-badge{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--home);font-weight:900}.swap-option-badge.away{background:var(--away)}.swap-option-badge.home.goalkeeper{background:#d74c86}.swap-option-badge.away.goalkeeper{background:#1aa6c8}.swap-option-main{min-width:0;display:grid;gap:5px}.swap-option-topline{min-width:0;display:flex;align-items:center;gap:8px}.swap-option-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:850;font-size:16px}.swap-option-source{flex:0 0 auto;min-height:22px;padding:3px 7px;border-radius:999px;display:inline-flex;align-items:center;color:#0e6f5b;background:#e7f3ee;font-size:12px;font-weight:750}.swap-option-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.swap-option-stats{display:flex;flex-wrap:wrap;gap:4px}.swap-option-stats span{min-height:22px;padding:3px 7px;border-radius:6px;color:#2f433a;background:#eef5f0;font-size:12px;font-variant-numeric:tabular-nums}.swap-option-radar{width:72px;height:72px;display:block;justify-self:end;pointer-events:none}.swap-option-radar svg{display:block;width:72px;height:72px}.swap-radar-guide{fill:none;stroke:#0e6f5b26;stroke-width:1}.swap-radar-axis{stroke:#0e6f5b33;stroke-width:1}.swap-radar-shape{fill:#0f7f6833;stroke:#0f8069;stroke-linejoin:round;stroke-width:2}.swap-radar-dot{fill:#0f8069;stroke:#fff;stroke-width:1.2}.player-manager-layout{height:100%;min-height:480px;display:grid;grid-template-columns:150px minmax(0,1fr) clamp(320px,27vw,390px)}.player-manager-team-panel{min-width:0;min-height:0;border-right:1px solid var(--line);display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#f6faf6}.player-manager-team-title{padding:14px 12px 8px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:12px;font-weight:900}.player-manager-team-add{min-height:28px;padding:0 9px;border-radius:8px;color:var(--accent-strong);background:#dbece5;cursor:pointer;font-size:12px;font-weight:900}.player-manager-team-add.full{width:100%;min-height:38px}.player-manager-team-list{min-height:0;overflow:auto;padding:8px;display:grid;align-content:start;gap:8px}.player-manager-team-item{min-width:0;min-height:54px;border:1px solid transparent;border-radius:8px;padding:8px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;background:transparent;color:var(--ink);cursor:pointer;text-align:left}.player-manager-team-item.active{border-color:#0f806861;background:var(--panel-strong);box-shadow:0 8px 18px #0f7f681a}.player-manager-team-dot{width:11px;height:11px;border-radius:50%;background:var(--home)}.player-manager-team-dot.away{background:var(--away)}.player-manager-team-main{min-width:0;display:grid;gap:2px}.player-manager-team-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:900}.player-manager-team-meta{color:var(--muted);font-size:12px;font-weight:760}.player-manager-team-controls{padding:10px 8px;border-top:1px solid var(--line);display:grid;gap:8px}.player-manager-team-name-field{display:grid;gap:5px;color:var(--muted);font-size:12px;font-weight:850}.player-manager-team-name-field input{width:100%;min-height:34px;border:1px solid var(--line);border-radius:8px;padding:0 9px;color:var(--ink);background:#fff;font-weight:800}.player-manager-team-actions{display:grid;grid-template-columns:1fr;gap:7px}.player-manager-team-delete{min-height:34px;border-radius:8px;color:#a33a3a;background:#e548481a;cursor:pointer;font-size:12px;font-weight:900}.player-manager-team-delete:disabled{opacity:.45;cursor:not-allowed}.player-manager-list-panel{min-width:0;min-height:0;border-right:1px solid var(--line);display:grid;grid-template-rows:auto minmax(0,1fr);background:#eef5f0}.player-manager-toolbar{padding:12px;border-bottom:1px solid var(--line);display:flex;gap:8px}.player-manager-add-button{min-height:40px;padding:0 13px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:#fff;background:var(--accent);cursor:pointer;font-size:13px;font-weight:900}.player-manager-add-button:hover{background:var(--accent-strong)}.player-manager-add-button:disabled{opacity:.46;cursor:not-allowed}.player-manager-add-button:disabled:hover{background:var(--accent)}.player-manager-add-button svg{width:17px;height:17px;stroke-width:2.5}.player-manager-list{min-width:0;min-height:0;overflow:auto;padding:10px}.player-manager-table-wrap{width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;scrollbar-width:thin}.player-manager-table{width:max-content;min-width:100%;border-collapse:collapse;color:var(--ink);font-size:13px}.player-manager-table th{position:sticky;top:0;z-index:1;padding:0;border-bottom:1px solid var(--line);color:#52635b;background:#eef8f2;font-weight:900;text-align:center;white-space:nowrap}.player-manager-sort-button{width:100%;min-height:40px;padding:9px 8px;border:0;display:inline-flex;align-items:center;justify-content:center;gap:4px;color:#52635b;background:transparent;font-weight:900;cursor:pointer}.player-manager-sort-button:hover,.player-manager-sort-button.is-active{color:var(--accent);background:#0f806814}.player-manager-sort-arrow{width:16px;height:16px;flex:0 0 auto;display:grid;place-items:center;color:#52635b61}.sort-icon{width:12px;height:12px;display:block;color:currentColor}.sort-icon-up,.sort-icon-down{fill:currentColor;opacity:.38;transition:fill .14s ease,opacity .14s ease}.fill-player-sort-button:hover .sort-icon,.player-manager-sort-button:hover .sort-icon{color:#0f80689e}.sort-icon.is-active{color:var(--accent)}.sort-icon.is-active .sort-icon-up,.sort-icon.is-active .sort-icon-down{opacity:.24}.sort-icon.is-active.is-asc .sort-icon-up,.sort-icon.is-active.is-desc .sort-icon-down{opacity:1}.player-manager-table th:nth-child(2) .player-manager-sort-button{justify-content:flex-start}.player-manager-table td{padding:9px 8px;border-bottom:1px solid rgba(203,218,207,.74);text-align:center;white-space:nowrap}.player-manager-table th:nth-child(1),.player-manager-table td:nth-child(1){min-width:74px}.player-manager-table th:nth-child(2),.player-manager-table td:nth-child(2){min-width:150px;max-width:210px}.player-manager-table th:nth-child(n+3):nth-child(-n+7),.player-manager-table td:nth-child(n+3):nth-child(-n+7){min-width:72px}.player-manager-table th:nth-child(8),.player-manager-table td:nth-child(8),.player-manager-table th:nth-child(9),.player-manager-table td:nth-child(9){min-width:76px}.player-manager-table th:nth-child(10),.player-manager-table td:nth-child(10){min-width:86px}.player-manager-table td:nth-child(2){text-align:left}.player-manager-table tbody tr:last-child td{border-bottom:0}.player-manager-row{cursor:pointer}.player-manager-row:hover,.player-manager-row:focus{outline:none;background:#f1faf6}.player-manager-row.active{background:#e8f7ef;box-shadow:inset 3px 0 0 var(--accent)}.player-manager-list-item{min-width:0;min-height:46px;border:1px solid var(--line);border-radius:8px;padding:7px 9px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:8px;background:var(--panel-strong);color:var(--ink);cursor:pointer;text-align:left}.player-manager-list-item.active{border-color:#0f806873;box-shadow:0 8px 18px #0f7f681f}.player-manager-number{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#e4ebe6;color:var(--accent-strong);font-weight:950}.player-manager-name{max-width:130px;min-width:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap;font-weight:850}.player-manager-linked{min-width:28px;height:24px;border:0;border-radius:999px;padding:0 7px;display:inline-flex;align-items:center;justify-content:center;gap:3px;background:#dbece5;color:var(--accent-strong);font-size:12px;font-weight:900;cursor:pointer}.player-manager-linked:hover{background:#cce4d9}.player-manager-linked svg{width:12px;height:12px;stroke-width:3}.player-usage-body{min-height:0;overflow:auto;padding:14px;display:grid;align-content:start;gap:10px}.player-usage-item{min-height:58px;border:1px solid var(--line);border-radius:8px;padding:10px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;background:#fff}.player-usage-main{min-width:0;display:grid;gap:3px}.player-usage-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.player-usage-main span{color:var(--muted);font-size:12px;font-weight:760}.player-usage-open{min-height:34px;padding:0 12px;border-radius:8px;color:#fff;background:var(--accent);cursor:pointer;font-weight:850}.player-manager-empty-link{color:#98a6a0;font-weight:850}.player-manager-edit-button{min-height:28px;padding:5px 8px;border:1px solid rgba(15,128,104,.22);border-radius:7px;display:inline-flex;align-items:center;gap:4px;color:var(--accent-strong);background:#e8f4ee;font-size:12px;font-weight:850;cursor:pointer;white-space:nowrap}.player-manager-edit-button:hover{border-color:#0f806880;background:#d8ede4}.player-manager-edit-button svg{width:14px;height:14px;stroke-width:2.6}.player-manager-editor{min-height:0;min-width:0;overflow:auto;padding:16px}.manager-attribute-panel{margin-top:16px;border:1px solid var(--line);border-radius:8px;padding:12px;display:grid;gap:11px;background:var(--panel-strong)}.manager-attribute-row{display:grid;grid-template-columns:44px minmax(90px,1fr) 24px;align-items:center;gap:8px;color:var(--muted);font-size:12px;font-weight:820}.manager-attribute-row input{min-width:0;accent-color:var(--accent)}.manager-attribute-row strong{color:var(--ink);font-weight:950;text-align:right}.manager-foot-section{margin-top:16px}.identity-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(82px,.52fr);gap:10px}.field-group{display:grid;gap:7px}.field-group label,.foot-label{color:var(--muted);font-size:12px;font-weight:820}.field-group input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:0 12px;background:var(--panel-strong);color:var(--ink);outline:none}.field-group input:focus{border-color:#0f80688c;box-shadow:0 0 0 3px #0f80681f}.library-sync-section{margin-top:0;border:1px solid var(--line);border-radius:8px;padding:12px;position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;background:var(--panel-strong);overflow:hidden}.library-sync-section+.identity-grid{margin-top:14px}.library-sync-section.is-linked{border-color:#0f80686b;box-shadow:inset 0 0 0 1px #0f806814}.library-sync-section.is-unlinked{border-color:#a0484838;background-color:#fffdfb;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22220%22%20height%3D%2256%22%20viewBox%3D%220%200%20220%2056%22%3E%3Cg%20transform%3D%22rotate(-10%20110%2028)%22%3E%3Ctext%20x%3D%228%22%20y%3D%2234%22%20fill%3D%22rgba(160%2C72%2C72%2C0.16)%22%20font-size%3D%2214%22%20font-family%3D%22Arial%2C%20sans-serif%22%20font-weight%3D%22800%22%3E%E5%B0%9A%E6%9C%AA%E5%85%B3%E8%81%94%E5%88%B0%E7%90%83%E9%98%9F%E7%90%83%E5%91%98%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fsvg%3E");background-size:220px 56px;background-repeat:repeat;background-position:18px 0}.library-sync-main{min-width:0;position:relative;z-index:1;display:grid;gap:5px}.library-sync-title{display:inline-flex;align-items:center;gap:7px;color:var(--ink);font-size:13px;font-weight:900}.library-sync-title svg{width:16px;height:16px;color:var(--accent-strong);stroke-width:2.6}.library-sync-badge{min-height:20px;padding:2px 7px;border-radius:999px;color:#fff;background:var(--accent);font-size:11px;line-height:1.2;font-weight:900}.library-sync-status{min-width:0;width:fit-content;max-width:100%;min-height:24px;padding:0;border:0;border-radius:0;display:inline-flex;align-items:center;gap:5px;color:var(--muted);background:transparent;font-size:12px;font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-sync-team-chip{min-height:20px;padding:1px 7px;border:1px solid rgba(15,128,104,.28);border-radius:999px;color:var(--accent-strong);background:#fff;font-weight:900}.library-sync-controls{position:relative;z-index:1;display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.library-sync-toggle{min-height:34px;padding:0 10px;border:0;border-radius:8px;display:inline-flex;align-items:center;gap:7px;background:#eef5f0;color:var(--ink);cursor:pointer;font-size:12px;font-weight:850}.library-sync-toggle svg{width:15px;height:15px;stroke-width:2.6}.library-sync-section.is-linked .library-sync-toggle{color:#a33a3a;background:#e548481a}.library-sync-toggle:hover{background:#dbece5}.library-sync-section.is-linked .library-sync-toggle:hover{background:#e5484829}.radar-editor{margin-top:16px;display:grid;grid-template-columns:minmax(260px,1fr) 150px;align-items:center;gap:14px;border:1px solid var(--line);border-radius:8px;padding:14px;background:var(--panel-strong)}.radar-chart-wrap{min-width:0;display:grid;place-items:center}.radar-chart{width:min(100%,340px);height:auto;aspect-ratio:1;overflow:visible;touch-action:none;cursor:crosshair}.radar-ring{fill:none;stroke:#dbe6df;stroke-width:1}.radar-ring.is-outer{stroke:var(--line);stroke-width:1.4}.radar-axis-line{stroke:#c8d7ce;stroke-width:1.1}.radar-label{fill:var(--muted);font-size:12px;font-weight:820;letter-spacing:0}.radar-label-value{fill:var(--ink);font-size:24px;font-weight:950}.radar-fill{fill:#0f806833;stroke:var(--accent);stroke-width:3;stroke-linejoin:round}.radar-handle{fill:var(--panel-strong);stroke:var(--accent);stroke-width:4;cursor:grab}.radar-handle:active{cursor:grabbing}.radar-hit-area{fill:transparent;cursor:crosshair}.radar-side{min-width:0;display:grid;gap:10px}.radar-score-card{min-height:86px;border:1px solid var(--line);border-radius:8px;display:grid;place-items:center;background:#f6f8f5;text-align:center}.radar-score-card strong{display:block;color:var(--accent-strong);font-size:32px;font-weight:950;line-height:1}.radar-score-card span{margin-top:5px;display:block;color:var(--muted);font-size:12px;font-weight:820}.radar-mini-list{display:grid;gap:6px}.radar-mini-row{min-height:28px;border-radius:8px;padding:0 9px;display:flex;align-items:center;justify-content:space-between;background:#f6f8f5;color:var(--muted);font-size:12px;font-weight:820}.radar-mini-row strong{color:var(--ink);font-weight:920}.foot-section{margin-top:16px;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--panel-strong)}.foot-options{margin-top:10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(86px,1fr));gap:8px}.foot-button{min-width:0;min-height:44px;padding:0 8px;border-radius:8px;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#f6f8f5;color:var(--ink);font-weight:850;cursor:pointer;white-space:nowrap}.foot-button svg{width:17px;height:17px;stroke-width:2.2}.foot-button.foot-right svg{transform:scaleX(-1)}.foot-button.is-active{border-color:#0f806866;background:var(--accent);color:#fff}.editor-footer{margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px;font-weight:760}.empty-state{min-height:220px;display:grid;place-items:center;color:var(--muted);font-weight:780;text-align:center}.timeline-detail-grid{--playhead-left: 0%;min-width:760px}.timeline-detail-ruler,.timeline-track-row{display:grid;grid-template-columns:168px minmax(540px,1fr)}.timeline-detail-ruler{position:sticky;top:0;z-index:4;height:46px;background:#f6faf5;border-bottom:1px solid var(--line)}.timeline-ruler-gutter{min-width:0;display:flex;align-items:center;padding:0 10px;border-right:1px solid var(--line);color:#415149;font-size:12px;font-weight:850}.timeline-ruler-lane,.timeline-track-lane{position:relative;min-width:0;background:linear-gradient(90deg,rgba(24,36,31,.06) 1px,transparent 1px) 0 0 / 8.333% 100%,#fbfdf9}.timeline-tick{position:absolute;top:0;bottom:0;width:1px;background:#18241f29}.timeline-tick span{position:absolute;top:8px;left:0;transform:translate(-50%);color:var(--muted);font-size:11px;font-weight:750;white-space:nowrap}.timeline-detail-rows{position:relative}.timeline-track-row{min-height:48px;border-bottom:1px solid #e1e9e2}.timeline-track-row.total{position:sticky;top:46px;z-index:3;min-height:50px;box-shadow:0 1px #d5ded6}.timeline-track-label{min-width:0;padding:8px 10px;border-right:1px solid var(--line);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;color:#2b3933;background:#fff;cursor:pointer;text-align:left}.timeline-track-row.selected .timeline-track-label{background:#dfeee8;color:var(--accent-strong)}.timeline-track-row.total .timeline-track-label{background:#eef7f2;color:var(--accent-strong);cursor:default}.timeline-track-row.is-hidden .timeline-track-label{opacity:.56}.timeline-track-badge{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--home);font-size:12px;font-weight:900;line-height:1}.timeline-track-row.away .timeline-track-badge{background:var(--away)}.timeline-track-row.ball .timeline-track-badge{color:#392712;background:var(--ball)}.timeline-track-row.home.goalkeeper .timeline-track-badge{background:#d74c86}.timeline-track-row.away.goalkeeper .timeline-track-badge{background:#1aa6c8}.timeline-track-row.total .timeline-track-badge{background:var(--accent)}.timeline-track-name{min-width:0;overflow:hidden;font-size:13px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.timeline-track-count{min-width:24px;height:22px;border-radius:999px;display:grid;place-items:center;color:var(--muted);background:#eef4ef;font-size:11px;font-weight:850;font-variant-numeric:tabular-nums}.timeline-track-lane{min-height:48px;cursor:pointer}.timeline-track-row.total .timeline-track-lane{min-height:50px;background:linear-gradient(90deg,rgba(15,127,104,.08) 1px,transparent 1px) 0 0 / 8.333% 100%,#f3fbf6}.timeline-track-lane:before{position:absolute;left:0;right:0;top:50%;height:2px;background:#18241f17;content:""}.timeline-playhead{position:absolute;top:0;bottom:0;left:var(--playhead-left);z-index:2;width:2px;background:#d69b12;box-shadow:0 0 0 1px #ffffffb3;pointer-events:none}.timeline-ruler-lane .timeline-playhead:before{position:absolute;top:5px;left:50%;width:12px;height:12px;border-radius:2px;background:#d69b12;content:"";transform:translate(-50%) rotate(45deg)}.timeline-keyframe-group{position:absolute;top:50%;z-index:3;width:34px;height:34px;transform:translate(-50%,-50%)}.timeline-keyframe{position:absolute;left:7px;top:7px;width:20px;height:20px;border:2px solid #ffffff;border-radius:4px;background:var(--home);box-shadow:0 5px 12px #101f192e;cursor:pointer;transform:rotate(45deg)}.timeline-track-row.away .timeline-keyframe{background:var(--away)}.timeline-track-row.ball .timeline-keyframe{background:var(--ball)}.timeline-track-row.home.goalkeeper .timeline-keyframe{background:#d74c86}.timeline-track-row.away.goalkeeper .timeline-keyframe{background:#1aa6c8}.timeline-keyframe-group.current .timeline-keyframe,.timeline-keyframe-group.editing .timeline-keyframe{border-color:#ffd86c;box-shadow:0 0 0 3px #ffd86c5c,0 5px 12px #101f192e}.timeline-keyframe-remove{position:absolute;right:-1px;top:-1px;z-index:4;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;color:#fff;background:#101f19ad;cursor:pointer;opacity:0;transition:opacity .12s ease,background .12s ease}.timeline-keyframe-group:hover .timeline-keyframe-remove,.timeline-keyframe-remove:focus-visible{opacity:1}.timeline-keyframe-remove:hover{background:var(--danger)}.timeline-keyframe-remove:disabled{opacity:0;cursor:not-allowed}.timeline-keyframe-remove svg{width:11px;height:11px;stroke-width:2.5}.timeline-summary-keyframe-group{position:absolute;top:50%;z-index:3;width:28px;height:28px;transform:translate(-50%,-50%)}.timeline-summary-keyframe{position:absolute;left:5px;top:5px;width:18px;height:18px;border:2px solid #ffffff;border-radius:50%;background:var(--accent);box-shadow:0 5px 12px #101f1929;cursor:pointer}.timeline-summary-keyframe-group.current .timeline-summary-keyframe{border-color:#ffd86c;box-shadow:0 0 0 3px #ffd86c5c,0 5px 12px #101f1929}@media(max-width:980px){body{overflow:auto}.app-shell{min-height:100vh}.topbar{grid-template-columns:1fr;align-items:stretch;padding:12px 18px;border-bottom:1px solid var(--line)}.topbar:after{display:none}.brand{align-self:center;justify-self:start;width:auto;padding:0;border-right:0;background:transparent}.topbar-center{justify-self:center}.transport{justify-self:stretch;justify-content:flex-start;flex-wrap:wrap}.stage-mode-switch{top:18px;left:18px}.stage-toggle-group{top:18px;right:18px}.workspace{grid-template-columns:1fr}.clip-sidebar{border-right:0;border-bottom:1px solid var(--line);max-height:260px}.stage-area{min-height:66vh;padding:0}.inspector{border-left:0;border-top:1px solid var(--line)}.player-profile-dialog{width:min(760px,calc(100vw - 24px))}.player-manager-dialog{width:min(760px,calc(100vw - 24px));height:min(92dvh,860px)}.clip-json-dialog,.ai-match-dialog,.new-clip-dialog{width:min(760px,calc(100vw - 24px))}.player-manager-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(150px,220px) minmax(0,1fr)}.player-manager-team-panel{border-right:0;border-bottom:1px solid var(--line)}.player-manager-team-title{padding-bottom:6px}.player-manager-team-list{grid-auto-flow:column;grid-auto-columns:minmax(128px,1fr);overflow-x:auto;overflow-y:hidden}.player-manager-list-panel{border-right:0;border-bottom:1px solid var(--line)}.radar-editor{grid-template-columns:1fr}}@media(max-width:560px){.brand{font-size:18px}.mode-button span,.tool-button span{display:none}.mode-button,.tool-button{width:40px;padding:0}.stage-mode-switch{top:12px;left:12px;gap:6px}.stage-toggle-group{top:12px;right:12px;max-width:calc(100% - 24px)}.stage-overlay-toggle{min-height:32px;padding:0 8px;gap:6px}.roster{grid-template-columns:repeat(6,minmax(0,1fr))}.timeline-panel{left:10px;right:10px;bottom:10px}.player-profile-dialog,.player-swap-dialog{max-height:calc(100dvh - 24px)}.player-manager-dialog{height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}.clip-json-dialog{max-height:calc(100dvh - 24px)}.ai-match-dialog{max-height:80dvh}.new-clip-dialog{max-height:calc(100dvh - 24px)}.new-clip-body{padding:12px}.new-clip-tactic-head{display:grid;gap:7px}.new-clip-tactic-tags{justify-content:flex-start}.new-clip-actions{padding:10px 12px;flex-wrap:wrap}.new-clip-actions .dialog-button{flex:1 1 120px}.ai-match-score-card,.ai-match-grid{grid-template-columns:1fr}.ai-match-row-main{grid-template-columns:auto minmax(0,1fr)}.ai-match-row-main p{grid-column:1 / -1}.player-profile-dialog-head{padding:14px}.player-profile-editor-body,.player-manager-editor{padding:12px}.player-swap-body{padding:10px}.player-swap-option{min-height:82px;grid-template-columns:auto minmax(0,1fr) 64px;gap:9px;padding:9px}.swap-option-badge{width:36px;height:36px}.swap-option-radar,.swap-option-radar svg{width:64px;height:64px}.swap-option-topline{align-items:flex-start;flex-direction:column;gap:3px}.swap-option-meta{white-space:normal;line-height:1.35}.identity-grid{grid-template-columns:minmax(0,1fr) 82px;gap:8px}.radar-editor,.foot-section{margin-top:12px;padding:10px}.foot-options{grid-template-columns:1fr}}@media(max-width:760px){body.share-preview{overflow:hidden}body.share-preview .app-shell{min-height:100dvh;grid-template-rows:auto 1fr}body.share-preview .topbar{min-height:46px;grid-template-columns:auto minmax(0,1fr);gap:7px;padding:6px 8px}body.share-preview .brand{gap:6px;font-size:0}body.share-preview .brand-mark{width:24px;height:24px;border-width:1px;box-shadow:0 0 0 2px #dce8df}body.share-preview .brand:after{content:"预览";font-size:14px}body.share-preview .stage-mode-switch{justify-content:center;flex-wrap:nowrap;gap:5px}body.share-preview .transport{justify-content:flex-end;flex-wrap:nowrap;gap:5px}body.share-preview .mode-button,body.share-preview .tool-button,body.share-preview .icon-button{width:34px;min-width:34px;min-height:34px;padding:0}body.share-preview .mode-button{min-width:34px}body.share-preview .mode-button span,body.share-preview .tool-button span{display:none}body.share-preview .mode-button svg,body.share-preview .tool-button svg,body.share-preview .icon-button svg{width:17px;height:17px}body.share-preview .save-status{display:none}body.share-preview .workspace{min-height:0}body.share-preview .stage-area{min-height:0;padding:0}body.share-preview .stage-frame{min-height:0;height:100%;border-radius:0}body.share-preview .timeline-panel{left:8px;right:8px;bottom:8px;padding:8px;gap:6px}body.share-preview .time-readout{margin-bottom:5px;font-size:12px}body.share-preview .timeline-control{grid-template-columns:34px minmax(0,1fr) 34px;gap:6px;min-width:0}body.share-preview .timeline-jump-button{width:34px;height:34px}body.share-preview .track-label{max-width:100%}body.share-preview .share-preview-controls{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;margin-top:6px;font-size:11px;min-width:0}body.share-preview .share-preview-title{max-width:none;min-width:0}body.share-preview .share-preview-controls label{min-width:0}body.share-preview .share-preview-controls select{width:66px;max-width:66px}body.share-preview .visibility-row{grid-template-columns:auto minmax(0,1fr) auto;min-width:0}body.share-preview .visibility-strip{gap:5px;max-width:100%}body.share-preview .visibility-button{width:28px;height:28px;font-size:11px}body.share-preview .show-all-button{justify-self:end;height:28px}}@media(max-width:760px),(orientation:portrait){#shareLinkDialog.has-share-qr{place-items:center}#shareLinkDialog.has-share-qr .share-link-dialog,#shareLinkDialog.has-share-qr[data-preview-device=mobile] .share-link-dialog{width:min(430px,calc(100vw - 36px))}.share-qr-code{width:104px}.share-qr-card{width:104px;padding:6px}.share-qr-svg{width:90px;height:90px}.share-link-dialog{width:min(430px,calc(100vw - 36px))}.share-frame-shell{min-height:0;height:100%}.share-frame-shell iframe{width:100%;max-width:100%;height:100%}.share-link-field{grid-template-columns:1fr}}
