.header{position:sticky;top:0;z-index:100;background:#0a0a0ae6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.header-content{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem}.logo{display:flex;align-items:center;gap:.5rem;color:var(--text-primary);font-weight:600;font-size:1.25rem}.logo:hover{color:var(--text-primary)}.logo-icon{color:var(--accent)}.nav{display:flex;gap:1.5rem;align-items:center}.nav a{color:var(--text-secondary);font-size:.9rem;transition:color .2s}.nav a:hover{color:var(--text-primary)}.github-link{padding:.4rem .8rem;border:1px solid var(--border);border-radius:6px}.github-link:hover{border-color:var(--text-secondary)}@media (max-width: 640px){.nav{gap:1rem}.nav a:not(.github-link){display:none}}.hero{padding:6rem 0;text-align:center;background:linear-gradient(180deg,var(--bg-secondary) 0%,var(--bg-primary) 100%)}.hero-title{font-size:3rem;margin-bottom:1.5rem;background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.25rem;color:var(--text-secondary);max-width:600px;margin:0 auto 2.5rem;line-height:1.7}.hero-cta{margin-bottom:3rem}.install-cmd{display:inline-block;padding:.75rem 1.5rem;font-size:1rem;border:1px solid var(--border);border-radius:8px}.hero-features{display:flex;justify-content:center;gap:2.5rem;flex-wrap:wrap}.feature{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.95rem}.feature-icon{color:var(--accent)}@media (max-width: 640px){.hero{padding:4rem 0}.hero-title{font-size:2.25rem}.hero-subtitle{font-size:1.1rem}.hero-features{gap:1.5rem}}.usage-section{background:var(--bg-primary)}.usage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:3rem}.usage-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.usage-card h3{margin-bottom:1rem;font-size:1.1rem}.usage-card pre{margin-bottom:1rem}.usage-card p{color:var(--text-secondary);font-size:.9rem}.cli-reference{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:2rem}.cli-reference>h3{margin-bottom:1.5rem;font-size:1.25rem}.cmd-group{margin-bottom:1.5rem}.cmd-group:last-child{margin-bottom:0}.cmd-group h4{color:var(--text-secondary);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.cmd-list{display:flex;flex-direction:column;gap:.5rem}.cmd{display:flex;align-items:center;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--border)}.cmd:last-child{border-bottom:none}.cmd code{flex-shrink:0;min-width:280px}.cmd span{color:var(--text-secondary);font-size:.9rem}@media (max-width: 768px){.cmd{flex-direction:column;align-items:flex-start;gap:.5rem}.cmd code{min-width:auto}}.mechanic-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;padding:.25rem .5rem;border-radius:4px;background:color-mix(in srgb,var(--badge-color, #6b7280) 15%,transparent);color:var(--badge-color, #6b7280);border:1px solid color-mix(in srgb,var(--badge-color, #6b7280) 30%,transparent);white-space:nowrap;transition:background .2s,border-color .2s}.mechanic-badge.unknown{--badge-color: #6b7280;font-style:italic}.mechanic-badge.with-category{padding-right:.25rem}.badge-category{font-size:.65rem;padding:.1rem .35rem;background:color-mix(in srgb,var(--badge-color, #6b7280) 25%,transparent);border-radius:3px;text-transform:uppercase;letter-spacing:.03em}.mechanic-link{text-decoration:none}.mechanic-link:hover .mechanic-badge{background:color-mix(in srgb,var(--badge-color, #6b7280) 25%,transparent);border-color:color-mix(in srgb,var(--badge-color, #6b7280) 50%,transparent)}.mechanics-badges.compact{gap:.35rem}.mechanics-badges.compact .mechanic-badge{font-size:.7rem;padding:.2rem .4rem}.games-section{background:var(--bg-secondary)}.section-desc{color:var(--text-secondary);margin-bottom:2rem;max-width:600px}.games-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.game-card{display:block;background:var(--bg-primary);border:1px solid var(--border);border-radius:12px;padding:1.5rem;transition:border-color .2s,transform .2s;color:var(--text-primary)}.game-card:hover{border-color:var(--accent);transform:translateY(-2px);color:var(--text-primary)}.game-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.game-header h3{font-size:1.25rem}.player-count{font-size:.85rem;color:var(--accent);padding:.25rem .75rem;background:#3b82f61a;border-radius:20px}.game-objective{color:var(--text-secondary);font-size:.95rem;margin-bottom:1rem;line-height:1.5}.game-mechanics{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1rem}.more-mechanics{font-size:.75rem;padding:.25rem .5rem;color:var(--text-secondary);background:var(--bg-tertiary);border-radius:4px}.game-stats{display:flex;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.stat{display:flex;flex-direction:column}.stat-value{font-size:1.25rem;font-weight:600}.stat-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.game-preview{padding-top:1rem;border-top:1px solid var(--border)}.preview-cmd{font-size:.85rem}.mechanics-section{padding:4rem 0;background:var(--bg-primary)}.mechanics-header{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:2rem;flex-wrap:wrap}.mechanics-header .section-title{margin-bottom:.5rem}.mechanics-header .section-desc{color:var(--text-secondary);max-width:550px;margin:0}.browse-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--accent);color:#fff;border-radius:8px;font-weight:500;transition:background .2s;white-space:nowrap}.browse-btn:hover{background:var(--accent-hover);color:#fff}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:2rem}.category-card{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:1rem .75rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;transition:all .2s;text-align:center}.category-card:hover{border-color:var(--cat-color);transform:translateY(-2px)}.category-name{font-size:.85rem;font-weight:500;color:var(--text-primary);text-transform:capitalize}.category-card:hover .category-name{color:var(--cat-color)}.category-count{font-size:1.25rem;font-weight:600;color:var(--cat-color)}.mechanics-usage{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.mechanics-usage h3{font-size:1rem;margin-bottom:1rem;color:var(--text-secondary)}.mechanics-usage pre{margin:0}@media (max-width: 640px){.mechanics-header{flex-direction:column}.browse-btn{width:100%;justify-content:center}.categories-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.architecture-section{background:var(--bg-primary)}.arch-diagram{margin-bottom:3rem;overflow-x:auto}.arch-diagram pre{display:inline-block;min-width:100%;font-size:.85rem;line-height:1.4}.arch-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.detail-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.detail-card h3{margin-bottom:.75rem;font-size:1.1rem}.detail-card p{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.footer{background:var(--bg-secondary);border-top:1px solid var(--border);padding:2rem 0}.footer-content{display:flex;justify-content:space-between;align-items:center}.footer-left{display:flex;align-items:center;gap:.75rem}.footer-logo{font-weight:600}.footer-sep{color:var(--border)}.footer-tagline,.footer-right a{color:var(--text-secondary);font-size:.9rem}.footer-right a:hover{color:var(--text-primary)}@media (max-width: 640px){.footer-content{flex-direction:column;gap:1rem}}.app{min-height:100vh;display:flex;flex-direction:column}main{flex:1}section{padding:4rem 0;border-bottom:1px solid var(--border)}section:last-child{border-bottom:none}.section-title{margin-bottom:2rem;color:var(--text-primary)}.game-page{padding:2rem 0 4rem;min-height:100vh}.game-page-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.game-page-header h1{font-size:2.5rem}.player-badge{font-size:.9rem;color:var(--accent);padding:.3rem 1rem;background:#3b82f61a;border-radius:20px}.game-meta{display:flex;gap:2rem;margin-bottom:2.5rem;flex-wrap:wrap}.meta-item{display:flex;flex-direction:column;gap:.25rem}.meta-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.mechanics-section{margin-bottom:2.5rem}.mechanics-section h2{font-size:1.1rem;margin-bottom:1rem}.mechanics-badges{display:flex;flex-wrap:wrap;gap:.5rem}.quick-start{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin-bottom:2.5rem}.quick-start h2{font-size:1.1rem;margin-bottom:1rem}.game-logs-section{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin-bottom:2.5rem}.game-logs-section h2{font-size:1.1rem;margin-bottom:.5rem}.logs-summary{color:var(--text-secondary);font-size:.9rem;margin-bottom:1rem}.view-logs-btn{display:inline-block;background:var(--accent);color:#fff;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;transition:background .2s}.view-logs-btn:hover{background:var(--accent-hover);color:#fff}.board-section,.deck-section,.rules-section{margin-bottom:2.5rem}.board-section h2,.deck-section h2,.rules-section h2{margin-bottom:1rem}.board-states{display:flex;gap:.75rem;flex-wrap:wrap}.board-state{padding:.5rem 1rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;font-size:.9rem}.board-state.start{border-color:var(--accent);color:var(--accent)}.board-state.victory{background:#22c55e1a;border-color:#22c55e;color:#22c55e}.card-type{margin-bottom:1.5rem}.card-type h3{font-size:.9rem;color:var(--text-secondary);text-transform:capitalize;margin-bottom:.75rem}.cards-list{display:flex;flex-wrap:wrap;gap:.5rem}.card-item{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;font-size:.85rem}.card-count{color:var(--text-secondary)}.rules-content{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:1.5rem 2rem;max-height:none;overflow-y:visible}.rules-content.markdown-body{font-size:.95rem;line-height:1.7;color:var(--text-primary)}.rules-content.markdown-body h1,.rules-content.markdown-body h2,.rules-content.markdown-body h3{margin-top:1.5rem;margin-bottom:.75rem;color:var(--text-primary)}.rules-content.markdown-body h1:first-child,.rules-content.markdown-body h2:first-child{margin-top:0}.rules-content.markdown-body h1{font-size:1.5rem}.rules-content.markdown-body h2{font-size:1.25rem}.rules-content.markdown-body h3{font-size:1.1rem}.rules-content.markdown-body p{margin-bottom:1rem}.rules-content.markdown-body ul,.rules-content.markdown-body ol{margin-bottom:1rem;padding-left:1.5rem}.rules-content.markdown-body li{margin-bottom:.35rem}.rules-content.markdown-body strong{color:var(--text-primary);font-weight:600}.rules-content.markdown-body code{background:var(--code-bg);padding:.15rem .4rem;border-radius:4px;font-size:.85em}.rules-content.markdown-body pre{background:var(--code-bg);border:1px solid var(--border);border-radius:8px;padding:1rem;overflow-x:auto;margin-bottom:1rem}.rules-content.markdown-body pre code{background:none;padding:0}.rules-content.markdown-body blockquote{border-left:3px solid var(--accent);padding-left:1rem;margin:1rem 0;color:var(--text-secondary)}.rules-content.markdown-body hr{border:none;border-top:1px solid var(--border);margin:1.5rem 0}.rules-content.markdown-body table{width:100%;border-collapse:collapse;margin-bottom:1rem}.rules-content.markdown-body th,.rules-content.markdown-body td{border:1px solid var(--border);padding:.5rem .75rem;text-align:left}.rules-content.markdown-body th{background:var(--bg-tertiary);font-weight:600}@media (max-width: 640px){.game-page-header h1{font-size:2rem}}.mechanics-page{min-height:100vh;padding:2rem 0 4rem}.back-link{display:inline-block;margin-bottom:2rem;color:var(--text-secondary);font-size:.9rem}.back-link:hover{color:var(--accent)}.mechanics-header{margin-bottom:2rem}.mechanics-header h1{margin-bottom:.5rem}.mechanics-subtitle{color:var(--text-secondary);font-size:1.1rem}.mechanics-controls{margin-bottom:2rem}.search-box{display:flex;gap:.5rem;margin-bottom:1rem}.search-box input{flex:1;max-width:400px;padding:.75rem 1rem;font-size:1rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;color:var(--text-primary)}.search-box input:focus{outline:none;border-color:var(--accent)}.clear-search{padding:.75rem 1rem;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:color .2s,border-color .2s}.clear-search:hover{color:var(--text-primary);border-color:var(--text-secondary)}.category-filters{display:flex;flex-wrap:wrap;gap:.5rem}.category-filter{padding:.4rem .75rem;font-size:.8rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:20px;color:var(--text-secondary);cursor:pointer;transition:all .2s}.category-filter:hover{border-color:var(--cat-color, var(--accent));color:var(--cat-color, var(--accent))}.category-filter.active{background:color-mix(in srgb,var(--cat-color, var(--accent)) 20%,transparent);border-color:var(--cat-color, var(--accent));color:var(--cat-color, var(--accent))}.mechanics-results{margin-bottom:1.5rem}.results-count{color:var(--text-secondary);font-size:.9rem}.category-section{margin-bottom:3rem}.category-header{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--cat-color, var(--border))}.category-header h2{color:var(--cat-color, var(--text-primary));text-transform:capitalize;font-size:1.5rem}.category-count{font-size:.85rem;color:var(--text-secondary)}.category-description{color:var(--text-secondary);font-size:.9rem;margin-bottom:1rem}.mechanics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.mechanic-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:1rem;transition:border-color .2s,transform .2s}.mechanic-card:hover{border-color:var(--cat-color, var(--border))}.mechanic-card.highlight,.mechanic-card.highlighted{border-color:var(--cat-color, var(--accent));box-shadow:0 0 0 2px color-mix(in srgb,var(--cat-color, var(--accent)) 30%,transparent);animation:pulse 2s ease-out}@keyframes pulse{0%{box-shadow:0 0 0 4px color-mix(in srgb,var(--cat-color, var(--accent)) 40%,transparent)}to{box-shadow:0 0 0 2px color-mix(in srgb,var(--cat-color, var(--accent)) 30%,transparent)}}.mechanic-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.mechanic-card-header h3{font-size:1rem;color:var(--text-primary)}.mechanic-id{font-size:.75rem;color:var(--text-secondary);font-family:monospace}.mechanic-summary{color:var(--cat-color, var(--accent));font-size:.8rem;font-weight:500;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.03em}.mechanic-description{color:var(--text-secondary);font-size:.85rem;line-height:1.5;margin-bottom:.75rem}.mechanic-card.expanded{grid-column:1 / -1}.mechanic-content.markdown-body{color:var(--text-secondary);font-size:.85rem;line-height:1.6;margin-bottom:.75rem}.mechanic-content.markdown-body h1,.mechanic-content.markdown-body h2,.mechanic-content.markdown-body h3{color:var(--text-primary);margin-top:1rem;margin-bottom:.5rem}.mechanic-content.markdown-body h1{font-size:1.1rem}.mechanic-content.markdown-body h2{font-size:1rem}.mechanic-content.markdown-body h3{font-size:.9rem}.mechanic-content.markdown-body p{margin-bottom:.5rem}.mechanic-content.markdown-body ul,.mechanic-content.markdown-body ol{margin-bottom:.5rem;padding-left:1.25rem}.mechanic-content.markdown-body code{background:var(--code-bg);padding:.1rem .3rem;border-radius:3px;font-size:.8em}.mechanic-content.markdown-body pre{background:var(--code-bg);padding:.75rem;border-radius:6px;overflow-x:auto;margin-bottom:.5rem}.mechanic-content.markdown-body pre code{background:none;padding:0}.expand-toggle{display:inline-block;padding:.25rem .5rem;margin-bottom:.75rem;font-size:.75rem;color:var(--cat-color, var(--accent));background:transparent;border:1px solid var(--cat-color, var(--accent));border-radius:4px;cursor:pointer;transition:all .2s}.expand-toggle:hover{background:color-mix(in srgb,var(--cat-color, var(--accent)) 15%,transparent)}.mechanic-games{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.8rem}.games-label{color:var(--text-secondary)}.game-link{padding:.15rem .5rem;background:var(--bg-tertiary);border-radius:4px;font-size:.75rem}.mechanic-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--border)}.mechanic-slug{font-size:.75rem;color:var(--text-secondary)}.bgg-link{font-size:.75rem;padding:.2rem .5rem;background:var(--bg-tertiary);border-radius:4px}@media (max-width: 640px){.mechanics-grid{grid-template-columns:1fr}.category-filters{gap:.35rem}.category-filter{font-size:.75rem;padding:.3rem .6rem}}.logs-page{padding:2rem 0 4rem;min-height:100vh}.logs-header{margin-bottom:2rem}.logs-header h1{margin-bottom:.5rem}.logs-description{color:var(--text-secondary)}.logs-overview{display:flex;gap:2rem;margin-bottom:2rem;padding:1.5rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap}.overview-stat{display:flex;flex-direction:column}.overview-value{font-size:2rem;font-weight:700;color:var(--accent)}.overview-label{font-size:.85rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.logs-filters{display:flex;gap:1.5rem;margin-bottom:1rem;flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-size:.9rem;color:var(--text-secondary)}.filter-group select{background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);padding:.5rem .75rem;font-size:.9rem}.logs-count{font-size:.85rem;color:var(--text-secondary);margin-bottom:1rem}.logs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}.log-card{display:block;background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:1.5rem;transition:border-color .2s,transform .2s;color:var(--text-primary)}.log-card:hover{border-color:var(--accent);transform:translateY(-2px);color:var(--text-primary)}.log-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.log-card-header h3{font-size:1.15rem;text-transform:capitalize}.outcome-badge{font-size:.75rem;padding:.25rem .6rem;border-radius:20px;text-transform:uppercase;font-weight:500}.log-card-meta{display:flex;gap:1rem;font-size:.8rem;color:var(--text-secondary);margin-bottom:1rem;font-family:SF Mono,Fira Code,monospace}.log-card-stats{display:flex;gap:1.25rem;margin-bottom:1rem;flex-wrap:wrap}.log-stat{display:flex;flex-direction:column}.log-stat-value{font-size:1.15rem;font-weight:600}.log-stat-label{font-size:.7rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.log-winner{font-size:.9rem;padding-top:.75rem;border-top:1px solid var(--border)}.log-winner strong{color:var(--accent)}.log-reason{font-size:.85rem;color:var(--text-secondary);font-style:italic;margin-top:.5rem}.no-logs{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}@media (max-width: 640px){.logs-overview{gap:1.5rem}.overview-value{font-size:1.5rem}.logs-filters{flex-direction:column;gap:1rem}.logs-grid{grid-template-columns:1fr}}.log-viewer{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;overflow:hidden}.log-controls{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem;background:var(--bg-tertiary);border-bottom:1px solid var(--border)}.control-group{display:flex;align-items:center;gap:.5rem}.control-group label{font-size:.85rem;color:var(--text-secondary)}.control-group select{background:var(--bg-primary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);padding:.35rem .75rem;font-size:.85rem}.view-toggle{margin-left:auto}.view-toggle button{background:var(--bg-primary);border:1px solid var(--border);color:var(--text-secondary);padding:.35rem .75rem;font-size:.85rem;cursor:pointer;transition:all .2s}.view-toggle button:first-child{border-radius:4px 0 0 4px}.view-toggle button:last-child{border-radius:0 4px 4px 0;border-left:none}.view-toggle button.active{background:var(--accent);border-color:var(--accent);color:#fff}.view-toggle button:hover:not(.active){background:var(--bg-tertiary)}.log-stats{padding:.5rem 1rem;font-size:.8rem;color:var(--text-secondary);border-bottom:1px solid var(--border)}.log-events{max-height:600px;overflow-y:auto}.log-event{border-bottom:1px solid var(--border)}.log-event:last-child{border-bottom:none}.event-main{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;cursor:pointer;transition:background .15s}.event-main:hover{background:var(--bg-tertiary)}.event-index{font-size:.75rem;color:var(--text-secondary);min-width:2rem;text-align:right}.event-time{font-family:SF Mono,Fira Code,monospace;font-size:.8rem;color:var(--text-secondary);min-width:80px}.event-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;font-size:.75rem;font-weight:600;flex-shrink:0}.event-icon.event-system{background:#3b82f633;color:#60a5fa}.event-icon.event-end{background:#22c55e33;color:#4ade80}.event-icon.event-cancelled{background:#ef444433;color:#f87171}.event-icon.event-action{background:#a855f733;color:#c084fc}.event-icon.event-play{background:#22c55e33;color:#4ade80}.event-icon.event-draw{background:#fbbf2433;color:#fbbf24}.event-icon.event-default{background:var(--bg-tertiary);color:var(--text-secondary)}.event-turn{font-size:.75rem;color:var(--text-secondary);background:var(--bg-tertiary);padding:.15rem .4rem;border-radius:4px}.event-content{flex:1;font-size:.9rem;line-height:1.5}.event-content strong{color:var(--accent)}.event-content code{font-size:.85em;padding:.1em .4em}.event-reason{color:var(--text-secondary);font-style:italic}.event-reasoning{margin-top:.35rem;font-size:.85rem;color:var(--text-secondary);font-style:italic;padding-left:1rem;border-left:2px solid var(--border)}.drawn-cards{font-family:SF Mono,Fira Code,monospace;font-size:.85em;color:var(--text-secondary)}.expand-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);width:24px;height:24px;border-radius:4px;cursor:pointer;font-size:.85rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.expand-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.event-raw{padding:.5rem 1rem 1rem;padding-left:calc(4.25rem + 104px)}.event-raw pre{font-size:.8rem;margin:0;background:var(--bg-primary)}.event-data{display:block;margin-top:.25rem;font-size:.8em;word-break:break-all}.log-raw-view{padding:1rem;max-height:600px;overflow:auto}.log-raw-view pre{margin:0;font-size:.8rem}.raw-line{padding:.25rem 0;border-bottom:1px solid var(--border);word-break:break-all}.raw-line:last-child{border-bottom:none}@media (max-width: 640px){.log-controls{flex-direction:column}.view-toggle{margin-left:0}.event-main{flex-wrap:wrap}.event-index{display:none}.event-raw{padding-left:1rem}}.log-detail-page{padding:2rem 0 4rem;min-height:100vh}.back-link{display:inline-block;margin-bottom:2rem;font-size:.9rem}.log-detail-header{margin-bottom:2rem}.header-main{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem;flex-wrap:wrap}.header-main h1{text-transform:capitalize}.outcome-badge{font-size:.8rem;padding:.3rem .75rem;border-radius:20px;text-transform:uppercase;font-weight:500}.outcome-completed{background:#22c55e26;color:#4ade80}.outcome-ended{background:#3b82f626;color:#60a5fa}.outcome-cancelled{background:#ef444426;color:#f87171}.outcome-progress{background:#fbbf2426;color:#fbbf24}.outcome-unknown{background:var(--bg-tertiary);color:var(--text-secondary)}.log-detail-id{font-family:SF Mono,Fira Code,monospace;font-size:.9rem;color:var(--text-secondary)}.log-detail-meta{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.meta-row{display:flex;gap:2rem;flex-wrap:wrap}.meta-row+.meta-row{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border)}.meta-item{display:flex;flex-direction:column;min-width:100px}.meta-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.meta-value{font-size:1rem}.log-detail-winner{font-size:1.1rem;margin-bottom:.75rem}.log-detail-winner strong{color:var(--accent)}.log-detail-reason{font-size:.95rem;color:var(--text-secondary);font-style:italic;margin-bottom:2rem}.log-detail-players{margin-bottom:2rem}.log-detail-players h2{margin-bottom:1rem}.players-list{display:flex;gap:.75rem;flex-wrap:wrap}.player-tag{background:var(--bg-secondary);border:1px solid var(--border);padding:.5rem 1rem;border-radius:8px;font-size:.9rem}.log-detail-breakdown{margin-bottom:2rem}.log-detail-breakdown h2{margin-bottom:1rem}.event-breakdown{display:flex;flex-wrap:wrap;gap:.75rem}.breakdown-item{display:flex;align-items:center;gap:.5rem;background:var(--bg-secondary);border:1px solid var(--border);padding:.5rem 1rem;border-radius:8px}.breakdown-event{font-size:.85rem;font-family:SF Mono,Fira Code,monospace}.breakdown-count{font-size:.85rem;font-weight:600;color:var(--accent);background:#3b82f61a;padding:.15rem .5rem;border-radius:4px}.log-detail-events h2{margin-bottom:1rem}@media (max-width: 640px){.header-main{flex-direction:column;align-items:flex-start}.meta-row{flex-direction:column;gap:1rem}.meta-row+.meta-row{margin-top:1rem;padding-top:1rem}}:root{--bg-primary: #0a0a0a;--bg-secondary: #141414;--bg-tertiary: #1a1a1a;--text-primary: #f5f5f5;--text-secondary: #a0a0a0;--accent: #3b82f6;--accent-hover: #2563eb;--border: #2a2a2a;--code-bg: #1e1e1e}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh}a{color:var(--accent);text-decoration:none;transition:color .2s}a:hover{color:var(--accent-hover)}code{font-family:SF Mono,Fira Code,Consolas,monospace;background:var(--code-bg);padding:.2em .4em;border-radius:4px;font-size:.9em}pre{background:var(--code-bg);padding:1rem;border-radius:8px;overflow-x:auto;border:1px solid var(--border)}pre code{background:none;padding:0}.container{max-width:1100px;margin:0 auto;padding:0 1.5rem}h1,h2,h3,h4{font-weight:600;line-height:1.3}h1{font-size:2.5rem}h2{font-size:1.75rem}h3{font-size:1.25rem}@media (max-width: 640px){h1{font-size:2rem}h2{font-size:1.5rem}}
