/* Timeline-specific compositions built from the canonical Game Hub primitives. */
.page-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.nav-item,.activity-item{text-decoration:none}
.content-stack{display:grid;gap:18px}
.content-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}
.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-6{grid-column:span 6}.span-7{grid-column:span 7}.span-8{grid-column:span 8}.span-12{grid-column:1/-1}
.panel-body{padding:22px}.panel-body.flush{padding:0}.panel-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border)}
.panel>.detail-list,.panel>.definition-grid{padding:22px}
.panel-head .panel-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.primary,.outline,.danger-button,.text-button,.button-icon{text-decoration:none}
.metric-link{color:inherit;text-decoration:none}.metric-link:hover{border-color:#aecbfa;box-shadow:var(--shadow)}
.filter-bar .form-field{display:grid;gap:5px}.filter-bar .form-field>span,.form-field>span{color:#6b7075;font-size:10px;font-weight:600}
.filter-bar input,.filter-bar select{height:38px;padding:0 11px;border:1px solid #c9ced6;border-radius:7px;background:#fff;color:#3c4043}
.filter-bar input{min-width:190px}.filter-grow{flex:1 1 280px}.filter-grow input{width:100%}
.form-shell{padding:22px}.form-field{display:grid;gap:7px}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #bdc1c6;border-radius:6px;background:#fff;color:#202124;font:inherit}.form-field input,.form-field select{height:42px;padding:0 11px}.form-field textarea{min-height:96px;padding:10px;resize:vertical}.form-field small,.help-text{color:var(--muted);font-size:10px}.form-field .field-error{color:var(--red)}
.form-check{display:flex;align-items:flex-start;gap:9px;color:#3c4043;font-size:13px}.form-check input{width:auto;height:auto;margin-top:2px;accent-color:var(--blue)}.form-grid label.form-check{display:flex;grid-column:1/-1;align-items:center}.form-grid label.form-check input{width:auto;height:auto;margin:0}
.table-number-input{width:72px;height:36px;padding:0 9px;border:1px solid #bdc1c6;border-radius:6px;background:#fff;color:#202124}
.form-section{padding:22px;border-bottom:1px solid var(--border)}.form-section:last-child{border-bottom:0}.form-section>h3{margin:0 0 5px;font-size:15px;font-weight:600}.form-section>p{margin:0 0 18px;color:var(--muted);font-size:11px}
.detail-list{display:grid;gap:15px;margin:0}.detail-list>div{display:grid;gap:4px}.detail-list dt{color:var(--muted);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.detail-list dd{margin:0;color:#3c4043;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.detail-list a{color:var(--blue);text-decoration:none}.detail-list a:hover{text-decoration:underline}
.definition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.definition-grid .wide{grid-column:1/-1}
.activity-list{display:grid}.activity-item{display:grid;grid-template-columns:36px 1fr auto;align-items:start;gap:12px;padding:14px 0;border-bottom:1px solid #edf0f3}.activity-item:last-child{border-bottom:0}.activity-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:#e8f0fe;color:#1967d2}.activity-copy{display:grid;gap:3px;min-width:0}.activity-copy strong{font-size:12px}.activity-copy small,.activity-meta{color:var(--muted);font-size:10px}.activity-meta{text-align:right;white-space:nowrap}
.code-block{max-width:100%;overflow:auto;margin:0;padding:16px;border:1px solid var(--border);border-radius:10px;background:#f8fafd;color:#3c4043;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;white-space:pre-wrap}
.query-cell{min-width:360px;max-width:760px}.query-cell summary{cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:11px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.query-cell pre{margin-top:10px}
.table-link{display:inline-flex;align-items:center;gap:5px;color:var(--blue);text-decoration:none}.table-link strong{color:#202124;font-size:13px}.table-link:hover{text-decoration:underline}.table-link:hover strong{color:var(--blue)}
.table-empty{text-align:center!important;color:var(--muted)}
.actions-cell{display:flex;justify-content:flex-end;align-items:center;gap:4px}.actions-cell a{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;color:#5f6368}.actions-cell a:hover{background:#e9edf3;color:var(--blue)}
.empty-inline{padding:36px;text-align:center;color:var(--muted);font-size:13px}
.alert{display:flex;align-items:flex-start;gap:10px;padding:13px 15px;border:1px solid var(--border);border-radius:10px;background:#fff;font-size:12px}.alert div p{margin:3px 0 0}.alert.error,.alert-danger{border-color:#f2b8b5;background:#fce8e6;color:var(--red)}.alert.success{border-color:#b7dfbf;background:#e6f4ea;color:var(--green)}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border);background:#fbfcfe}.toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.toolbar[hidden]{display:none}
.button-icon{display:inline-grid;width:38px;height:38px;place-items:center;border:1px solid #c4c7c5;border-radius:50%;background:#fff;color:#5f6368}.button-icon:hover{background:#f0f5ff;color:var(--blue)}
.danger-link{color:var(--red)}
.wysiwyg-toolbar{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border:1px solid #bdc1c6;border-bottom:0;border-radius:6px 6px 0 0;background:#f8fafd}.wysiwyg-toolbar button{display:grid;width:32px;height:32px;place-items:center;border:0;border-radius:6px;background:transparent;color:#3c4043}.wysiwyg-toolbar button:hover{background:#e8f0fe;color:var(--blue)}
.wysiwyg-editor{min-height:180px;padding:12px;border:1px solid #bdc1c6;border-radius:0 0 6px 6px;background:#fff;outline:none;line-height:1.6}.wysiwyg-source{min-height:180px;border-radius:0 0 6px 6px!important;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important}
.wysiwyg-editor-large{min-height:360px}.cover-preview{display:block;max-width:100%;max-height:260px;margin:12px 0 18px;border:1px solid var(--border);border-radius:10px;object-fit:contain}.cover-preview-large{max-height:420px}.rich-content{font-size:14px;line-height:1.7}.rich-content iframe{max-width:100%}.break-value{overflow-wrap:anywhere}.align-right{text-align:right}
.modal-shell{width:min(640px,calc(100vw - 32px));padding:0;border:0;border-radius:16px;background:#fff;box-shadow:0 16px 48px rgba(32,33,36,.28);color:#202124}.modal-shell::backdrop{background:rgba(32,33,36,.4)}.modal-shell>header{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--border)}.modal-shell>header small{color:#1967d2;font-size:9px;font-weight:700;letter-spacing:.1em}.modal-shell>header h2{margin:4px 0 0;font-size:20px}.modal-content{padding:22px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}
.login-error{margin-bottom:18px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
[hidden]{display:none!important}
@media(max-width:1080px){.span-3,.span-4,.span-5,.span-6,.span-7,.span-8{grid-column:span 6}}
@media(max-width:760px){.content-grid{grid-template-columns:1fr}.span-3,.span-4,.span-5,.span-6,.span-7,.span-8,.span-12{grid-column:1}.definition-grid{grid-template-columns:1fr}.definition-grid .wide{grid-column:auto}.page-actions{justify-content:flex-start}.filter-bar{align-items:stretch}.filter-bar .form-field,.filter-bar input,.filter-bar select,.filter-bar button,.filter-bar a{width:100%}.query-cell{min-width:280px}}
