:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{--background-dark:#0d2325;--background-medium:#1a3537;--background-card:#162b2d;--background-game:#0a1d1f;--text-primary:#e8dcc8;--text-muted:#a8bec0;--accent:#d4a853;--accent-hover:#b8903d;--accent-bg:#d4a8531a;--accent-border:#d4a8534d;--border-light:#d4a85333;--border-medium:#d4a8534d;--danger:#d4a853;--warning:#d4a853;--success:#d4a853;--shadow:0 8px 40px #00000080}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--background-dark);min-height:100vh;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.app-container{background:var(--background-dark);flex-direction:column;max-width:800px;min-height:100vh;margin:0 auto;padding:0;display:flex}.loading-screen,.error-screen{text-align:center;background:var(--background-medium);box-shadow:var(--shadow);border-radius:12px;margin:20px;padding:60px 20px}.loading-screen h1,.error-screen h1{color:var(--text-primary);margin-bottom:16px}.loading-screen p,.error-screen p{color:var(--text-muted);font-size:18px}.error-screen button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;margin-top:20px;padding:12px 24px;font-size:16px;transition:opacity .2s}.error-screen button:hover{opacity:.9}.scoundrel-game{background:var(--background-dark);flex-direction:column;min-height:100vh;display:flex}.game-header-hero{text-align:center;background:#0d2325;padding:60px 24px 40px;position:relative}.action-buttons-container{justify-content:center;gap:16px;max-width:600px;margin:0 auto;padding:20px 0;display:flex}.help-button,.stats-button{background:var(--card-bg);border:2px solid var(--border);color:var(--text-primary);cursor:pointer;border-radius:12px;padding:12px 20px;font-size:1.8rem;transition:all .2s;box-shadow:0 2px 4px #0000001a}.help-button:hover,.stats-button:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.header-link{text-decoration:none;transition:transform .2s,opacity .2s;display:inline-block}.header-link:hover{opacity:.9;transform:translateY(-2px)}.header-logo{object-fit:cover;border-radius:28px;width:140px;height:140px;margin:0 auto 24px;display:block;box-shadow:0 8px 40px #00000080}.header-title{color:var(--text-primary);letter-spacing:1px;margin:0 0 16px;font-size:32px;font-weight:700}.header-tagline{color:#a8bec0;max-width:500px;margin:0 auto 16px;font-size:clamp(.9rem,2.5vw,1rem);line-height:1.6}.game-header .store-buttons{max-width:500px;margin:0 auto 32px}.challenge-title{border-top:2px solid #d4a85333;padding-top:24px}.challenge-title h2{color:var(--accent);letter-spacing:1px;text-transform:uppercase;margin:0;font-size:20px;font-weight:600}.countdown-timer{color:#d4a853cc;letter-spacing:.5px;margin-top:8px;font-family:Courier New,monospace;font-size:14px;font-weight:500}.game-stats{background:var(--background-medium);border-bottom:1px solid var(--border-light);justify-content:space-around;align-items:center;gap:16px;padding:12px 20px;display:flex}.stat-item{flex-direction:column;align-items:center;gap:4px;display:flex}.stat-label{color:var(--text-muted);letter-spacing:.5px;text-transform:uppercase;font-size:10px;font-weight:700}.stat-value{color:var(--text-primary);font-size:16px;font-weight:700}.score{color:var(--accent)!important}.health-bar{flex-direction:column;align-items:center;gap:4px;display:flex}.health-label{color:var(--text-muted);letter-spacing:.5px;text-transform:uppercase;font-size:10px;font-weight:700}.health-value{color:var(--danger);font-size:16px;font-weight:700}.message{background:var(--accent-bg);border:2px solid var(--accent-border);text-align:center;color:var(--text-primary);border-radius:8px;margin:16px 20px;padding:12px;font-weight:700}.game-area{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:0;padding:20px;display:flex}.game-board{flex:1;justify-content:center;align-items:center;display:flex}.card-grid{grid-template-columns:repeat(2,1fr);gap:15px;max-width:300px;display:grid}.card{cursor:pointer;background:var(--background-medium);border-radius:8px;transition:transform .2s,box-shadow .2s;overflow:hidden}.card:hover:not(.disabled){transform:translateY(-4px);box-shadow:0 6px 12px #00000080}.card.disabled{opacity:.5;cursor:not-allowed}.card-image{width:100%;height:auto;display:block}.card.empty{cursor:default}.card-placeholder{aspect-ratio:.714;border:2px dashed var(--border-light);background:#0003;border-radius:8px;width:100%}.footer{background:var(--background-medium);border-top:1px solid var(--border-light);align-items:stretch;gap:10px;min-height:200px;padding:12px;display:flex}.weapon-area{flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.weapon-label{color:var(--accent);letter-spacing:1px;text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:700}.weapon-slot{flex-direction:column;justify-content:flex-start;align-items:center;min-width:120px;display:flex;position:relative}.weapon-slot.empty{opacity:.7}.weapon-image{width:80px;height:auto;box-shadow:var(--shadow);border-radius:8px}.weapon-placeholder{border:2px dashed var(--border-light);width:80px;height:112px;color:var(--text-muted);text-align:center;background:#0003;border-radius:10px;justify-content:center;align-items:center;padding:8px;font-size:12px;display:flex}.weapon-stack-container{width:80px;height:120px;position:relative}.weapon-stack-card{width:80px;box-shadow:var(--shadow);border-radius:8px;position:absolute}.weapon-stack-count{color:var(--text-muted);margin-top:8px;font-size:12px;font-weight:700}.controls-area{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.controls-stats{border:1px solid var(--border-light);background:#0003;border-radius:12px;width:100%;padding:12px}.controls-stat-item{flex-direction:column;align-items:center;gap:4px;display:flex}.game-controls{flex-direction:column;gap:12px;width:100%;display:flex}.settings-button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:12px;width:100%;padding:12px 16px;transition:opacity .2s,transform .1s;display:flex}.settings-button:hover{opacity:.9;transform:translateY(-1px)}.settings-button:active{transform:translateY(0)}.settings-button-icon{flex-shrink:0;font-size:24px}.settings-button-text{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;display:flex}.settings-button-title{letter-spacing:.5px;font-size:16px;font-weight:700}.settings-button-subtitle{opacity:.85;font-size:12px;font-weight:400}.run-button{background:var(--warning);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:14px 24px;font-size:16px;font-weight:700;transition:opacity .2s,transform .1s}.run-button:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.run-button:active:not(:disabled){transform:translateY(0)}.run-button:disabled{opacity:.4;cursor:not-allowed}.deck-count{text-align:center;color:var(--text-muted);padding:8px;font-size:14px}.game-over{background:var(--background-medium);text-align:center;z-index:100;border:2px solid var(--border-light);border-radius:16px;width:400px;max-width:90%;padding:32px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 32px #00000080}.game-over.victory{border-color:var(--success)}.game-over.defeat{border-color:var(--danger)}.game-over h2{color:var(--text-primary);margin-bottom:12px;font-size:32px}.game-over p{color:var(--text-primary);margin-bottom:24px;font-size:20px}.download-cta{background:linear-gradient(135deg, var(--accent) 0%, #c13584 100%);color:#fff;text-align:center;border-radius:12px;margin-top:20px;padding:24px}.download-cta h3{margin-bottom:8px;font-size:20px;font-weight:600}.download-cta p{opacity:.95;margin-bottom:16px;font-size:14px}.store-buttons{flex-wrap:wrap;justify-content:center;gap:16px;margin:0 auto 16px;display:flex}.store-btn{color:#0d2325;background:#e8dcc8;border-radius:10px;align-items:center;gap:10px;min-width:200px;padding:14px 28px;font-size:1rem;font-weight:600;text-decoration:none;transition:background .15s,transform .1s;display:inline-flex}.store-btn:hover{background:#d4a853;transform:translateY(-1px)}.store-btn img{width:32px;height:32px}.store-btn .store-label{text-align:left;flex-direction:column;display:flex}.store-btn .store-label small{opacity:.7;text-transform:uppercase;letter-spacing:.5px;font-size:.7rem;font-weight:400}.modal-overlay{z-index:1000;background:#000000d9;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background:var(--background-medium);border:1px solid var(--border-light);border-radius:16px;width:100%;max-height:90vh;padding:32px;overflow-y:auto}.modal-content h2{color:var(--text-primary);text-align:center;margin-bottom:20px}.share-modal{max-width:700px}.modal-countdown{color:#d4a853e6;text-align:center;margin:12px 0 20px;font-size:15px;font-weight:500}.modal-countdown .countdown-time{letter-spacing:1px;color:var(--accent);font-family:Courier New,monospace;font-weight:600}.share-text{border:1px solid var(--border-light);white-space:pre-wrap;color:var(--text-primary);background:#0000004d;border-radius:8px;margin-bottom:20px;padding:16px;font-family:monospace;font-size:14px}.download-cta-inline{text-align:center;border-top:2px solid #d4a85333;margin-top:24px;padding-top:24px}.download-cta-inline h3{color:var(--text-primary);margin-bottom:8px;font-size:1.3rem}.download-cta-inline p{color:var(--text-muted);margin-bottom:20px}.close-button.full-width{width:100%;margin-top:20px}.attempt-info{color:var(--text-muted);text-align:center;margin:-8px 0 16px;font-size:.9rem}.retry-button{margin-right:8px}.stats-modal{max-width:600px}.settings-modal{background:var(--background-medium);border:1px solid var(--border-light);border-radius:16px;flex-direction:column;width:100%;max-width:700px;max-height:90vh;padding:0;display:flex;overflow:hidden}.settings-modal .modal-header{border-bottom:1px solid var(--border-light);align-items:center;gap:12px;padding:24px 32px;display:flex}.settings-modal .modal-icon{font-size:28px}.settings-modal .modal-header h2{color:var(--text-primary);margin:0;font-size:24px}.settings-modal .modal-content{flex:1;padding:24px 32px;overflow-y:auto}.settings-modal .modal-footer{border-top:1px solid var(--border-light);justify-content:center;padding:20px 32px;display:flex}.settings-section{margin-bottom:32px}.settings-section:last-child{margin-bottom:0}.section-title{color:var(--text-primary);text-align:center;margin-bottom:16px;font-size:18px;font-weight:600}.language-dropdown{border:1px solid var(--border-light);cursor:pointer;background:#0000004d;border-radius:8px;max-width:500px;margin:0 auto;padding:16px;transition:background .2s}.language-dropdown:hover{background:#0006}.language-dropdown-header{justify-content:space-between;align-items:center;display:flex}.language-label{color:var(--text-primary);font-size:16px;font-weight:600}.language-current{color:var(--text-muted);align-items:center;gap:12px;display:flex}.dropdown-arrow{font-size:12px;transition:transform .2s}.language-options{border:1px solid var(--border-light);background:#0003;border-radius:8px;max-width:500px;margin-top:12px;margin-left:auto;margin-right:auto;overflow:hidden}.language-option{cursor:pointer;color:var(--text-muted);justify-content:space-between;align-items:center;padding:12px 16px;transition:background .2s;display:flex}.language-option:hover{background:#d4a8531a}.language-option.active{color:var(--accent);background:#d4a85326}.language-option .checkmark{font-size:18px;font-weight:700}.deck-grid{grid-template-columns:repeat(2,1fr);gap:16px;max-width:550px;margin:0 auto;display:grid}.deck-preview{border:2px solid var(--border-light);cursor:pointer;background:#0000004d;border-radius:12px;padding:16px;transition:all .2s;position:relative;overflow:hidden}.deck-preview:hover{border-color:var(--accent-border);background:#0006}.deck-preview.active{border-color:var(--accent);background:var(--accent-bg)}.deck-preview.locked{opacity:.7;cursor:default}.deck-preview.locked:hover{border-color:var(--border-light);background:#0000004d}.deck-preview-cards{justify-content:center;align-items:center;height:100px;margin-bottom:12px;display:flex;position:relative}.preview-card{border-radius:4px;width:auto;max-width:70px;height:auto;max-height:100px;box-shadow:0 2px 8px #0000004d}.deck-info{text-align:center}.deck-name{color:var(--text-primary);margin-bottom:4px;font-size:14px;font-weight:600}.deck-source{color:var(--text-muted);font-size:12px;text-decoration:none;transition:color .2s}.deck-source:hover{color:var(--accent)}.deck-checkmark{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:16px;font-weight:700;display:flex;position:absolute;top:8px;right:8px}.deck-lock-icon{opacity:.7;font-size:20px;position:absolute;top:8px;right:8px}.deck-locked-message{color:#fff;text-align:center;background:#d4a853f2;padding:8px;font-size:12px;font-weight:600;animation:.3s ease-out slideUp;position:absolute;bottom:0;left:0;right:0}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.done-button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 32px;font-size:16px;font-weight:700;transition:opacity .2s}.done-button:hover{opacity:.9}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;margin:24px 0;display:grid}.stat-card{border:1px solid var(--border-light);text-align:center;background:#0000004d;border-radius:8px;padding:16px}.stat-value{color:var(--accent);margin-bottom:4px;font-size:2rem;font-weight:700}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem}.modal-buttons{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.primary-button,.copy-button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 24px;font-size:16px;font-weight:700;transition:opacity .2s}.primary-button:hover,.copy-button:hover{opacity:.9}.copy-button.copied{background:var(--success);cursor:default}.copy-button.copied:hover{opacity:1}.secondary-button,.close-button{color:#fff;cursor:pointer;background:#4b5563;border:none;border-radius:8px;padding:12px 24px;font-size:16px;transition:opacity .2s}.secondary-button:hover,.close-button:hover{opacity:.9}.tutorial-modal{max-width:700px}.game-creator{color:#a8bec0;margin-top:-8px;margin-bottom:16px;font-size:.9rem;font-style:italic}.bgg-link{color:#d4a853;cursor:pointer;margin-left:4px;font-style:normal;font-weight:700;text-decoration:underline}.bgg-link:hover{color:#b8903d}.tutorial-content{text-align:left;max-height:calc(80vh - 200px);margin-bottom:24px;overflow-y:auto}.tutorial-section{margin-bottom:20px}.tutorial-section h3{color:var(--text-primary);margin-bottom:8px;font-size:18px}.tutorial-section p,.tutorial-section li{color:var(--text-muted);margin-bottom:8px;line-height:1.6}.tutorial-section ul{padding-left:12px;list-style-position:inside}.tutorial-section .critical{color:#ff6b6b;font-weight:700}.tutorial-section .victory{color:#51cf66;font-weight:700}.tutorial-section .defeat{color:#ff6b6b;font-weight:700}@media (width<=640px){.app-container{padding:0}.game-header-hero{padding:50px 20px 32px}.header-logo{border-radius:20px;width:100px;height:100px;margin-bottom:20px}.header-title{margin-bottom:12px;font-size:24px}.header-tagline{margin-bottom:12px;font-size:.85rem}.game-header .store-buttons{margin-bottom:24px}.challenge-title{padding-top:20px}.challenge-title h2{font-size:16px}.countdown-timer{margin-top:6px;font-size:12px}.footer{min-height:auto;padding:16px}.weapon-area,.controls-area{width:100%}.card-grid{gap:12px;max-width:250px}.modal-content{padding:24px}.game-over{width:90%;padding:24px}.action-buttons-container{padding:12px 0}.help-button,.stats-button{padding:10px 16px;font-size:1.5rem}.settings-modal{border-radius:12px;max-width:100%;max-height:95vh}.settings-modal .modal-header{padding:16px 20px}.settings-modal .modal-header h2{font-size:20px}.settings-modal .modal-content,.settings-modal .modal-footer{padding:16px 20px}.deck-grid{grid-template-columns:1fr;gap:12px}.deck-preview-cards{height:80px}.preview-card{max-width:60px;max-height:80px}}
