@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;800&family=JetBrains+Mono:wght@400;700&display=swap";:root{--player-grey: #d8d8d8;--player-green: #b5c599;--ink: #1F1F1F;--ink-muted: rgba(31, 31, 31, .6);--border-ink: rgba(31, 31, 31, .15);--bg-page: #f0f0f0;--bg-paper: #fafafa;--accent: #d32f2f;--font-main: "Outfit", "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Courier New", monospace;--map-v-scale: calc((100vh - 40px) / 880);--card-size-multiplier: .9;--base-card-width: 313.6;--base-card-height: 502.66;--card-width: calc(var(--base-card-width) * var(--map-v-scale) * var(--card-size-multiplier));--card-height: calc(var(--base-card-height) * var(--map-v-scale) * var(--card-size-multiplier));--card-hand-scale: .4;--card-visual-width: calc(var(--card-width) * var(--card-hand-scale));--card-base-y: calc(10 * var(--map-v-scale) * var(--card-size-multiplier));--card-hover-y: calc(10 * var(--map-v-scale) * var(--card-size-multiplier));--card-hover-scale: calc(.9 / var(--card-size-multiplier));--card-selected-y: calc(-150 * var(--map-v-scale) * var(--card-size-multiplier));--card-selected-scale: .4;--card-padding: calc(15 * var(--map-v-scale) * var(--card-size-multiplier));--card-hand-margin-right: calc(var(--card-width) * (var(--card-hand-scale) - 1));--card-gap: calc(15 * var(--map-v-scale) * var(--card-size-multiplier))}html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden;background-image:linear-gradient(#ffffffb3,#fff9),url(/assets/background_camo_large.png);background-repeat:repeat;background-size:1024px;font-family:var(--font-main);-webkit-tap-highlight-color:transparent}.game-container{width:100vw;height:100vh;display:flex;justify-content:center;align-items:center}#game-wrapper{display:flex;width:calc(100vw - 40px);height:calc(100vh - 40px);margin:20px;border:2px solid var(--ink);border-radius:12px;overflow:hidden;background-color:#fff;box-shadow:0 10px 30px #0000001a}#map-container{position:relative;flex:1;height:100%;transition:flex .3s cubic-bezier(.4,0,.2,1);touch-action:none}#main{width:100%;height:100%;box-sizing:border-box;background-image:linear-gradient(#fff6,#fff6),url(/assets/background_camo_large.png);background-repeat:repeat;background-size:1024px;touch-action:none}#info-area{width:400px;height:100%;border-left:3px solid var(--ink);box-shadow:-1px 0 #ffffff80;background-color:#fafafa;padding:15px;box-sizing:border-box;display:flex;flex-direction:column;gap:10px;transition:width .3s cubic-bezier(.4,0,.2,1),margin-right .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1),opacity .2s ease,padding .3s ease;overflow-y:auto;overflow-x:hidden;flex-shrink:0}#game-wrapper.sidebar-collapsed #info-area{width:0;padding:0;margin-right:0;transform:translate(400px);opacity:0;border:none;pointer-events:none}#game-wrapper.sidebar-collapsed #map-container{flex:1}.info-section{display:flex;flex-direction:column;gap:5px}.info-label{font-size:11px;color:var(--ink-muted);text-transform:uppercase;font-weight:700;letter-spacing:1px;font-family:var(--font-mono)}.info-value{font-size:20px;font-weight:700;color:var(--ink)}.info-value.turn-indicator{padding:5px 10px;border-radius:5px;display:inline-block}.info-value.player-green{background-color:var(--player-green)}.info-value.player-grey{background-color:var(--player-grey)}.opponent-status{font-size:14px;font-weight:700}.info-group{display:flex;justify-content:space-between;align-items:center;gap:0;padding:4px 0;margin-bottom:8px}.info-group .info-section{flex:1}.info-group .info-label{font-size:11px;color:var(--ink-muted)}.info-group .info-value{font-size:20px}.score-display{display:flex;flex-direction:column;gap:4px}.score-compact{display:flex;gap:8px;align-items:center}.score-pill{flex:1;height:28px;display:flex;justify-content:center;align-items:center;border-radius:4px;border:1px solid var(--ink);font-weight:800;font-size:16px;min-width:44px;box-shadow:none}.score-grey-item{background-color:var(--player-grey);color:var(--ink)}.score-green-item{background-color:var(--player-green);color:#4e6b31}.score-value{font-family:Courier New,Courier,monospace}.status-text{font-size:16px;color:#d32f2f;min-height:1.8em;display:flex;align-items:center}.action-buttons{display:flex;gap:10px;margin-top:10px}.btn{padding:8px 16px;font-size:14px;font-weight:700;box-sizing:border-box;cursor:pointer;border:2.5px solid var(--ink);background-color:#fff;border-radius:6px;transition:all .1s cubic-bezier(.175,.885,.32,1.275);height:40px;display:flex;align-items:center;justify-content:center;white-space:nowrap;box-shadow:0 3px 0 var(--ink);text-transform:uppercase;letter-spacing:.5px;touch-action:manipulation}.btn:hover:not(:disabled){background-color:#f8f9fa;transform:translateY(-1px);box-shadow:0 4px 0 var(--ink)}.btn:active:not(:disabled){background-color:#e9ecef;transform:translateY(3px);box-shadow:0 0 0 var(--ink)}.btn:disabled{background-color:#f1f3f5;border-color:#dee2e6;color:#adb5bd;cursor:not-allowed;box-shadow:none;transform:none;opacity:.7}.separator{height:1px;background-color:var(--border-ink);margin:6px 0}.unit-view{filter:drop-shadow(2px 2px 2px rgba(0,0,0,.5))}.log-container{display:flex;flex-direction:column;gap:6px;margin-top:4px}.full-log-btn{width:100%;margin-top:4px;height:32px;font-size:12px}.full-log-btn:active{transform:translateY(1px);box-shadow:0 0 0 var(--ink)}.log-list{background:#fff!important;border:1px solid var(--border-ink);border-radius:4px;height:70px;overflow:hidden}.log-inner-list{background:#fff!important;height:100%;overflow-y:auto;padding:8px 8px 0;font-size:13px;font-family:Courier New,Courier,monospace;display:flex;flex-direction:column;gap:2px;justify-content:flex-start;scrollbar-width:none;-ms-overflow-style:none;mask-image:linear-gradient(to bottom,transparent,white 20px);-webkit-mask-image:linear-gradient(to bottom,transparent,white 20px)}.log-inner-list:before{content:"";flex:1 0 auto}.log-inner-list::-webkit-scrollbar{display:none}.log-inner-list:after{content:"";display:block;height:10px;flex-shrink:0}.log-entry{border-bottom:1px solid var(--border-ink);padding-bottom:2px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.log-entry:last-child{border-bottom:none}.log-player-grey{color:var(--ink-muted);font-weight:700}.log-player-green{color:#4e6b31;font-weight:700}.log-action{color:var(--ink)}.log-result{color:#d32f2f;font-weight:700}.log-sub-entry{font-size:11px;color:var(--ink-muted);margin-left:10px}.modal-footer{display:flex;justify-content:center;width:100%;margin-top:20px}.log-modal-overlay{z-index:1000}.log-modal{width:500px;height:600px;background:#fff;border:2px solid var(--ink);border-radius:12px;display:flex;flex-direction:column;align-items:center;gap:20px;padding:20px;box-shadow:0 15px 35px #1f1f1f4d;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.log-modal-close{cursor:pointer;font-size:24px;font-weight:700}.log-modal-list{width:100%;box-sizing:border-box;flex-grow:1;overflow-y:auto;background:#fff;border:1px solid var(--border-ink);border-radius:4px;padding:15px;font-family:Courier New,Courier,monospace;font-size:14px;display:flex;flex-direction:column;gap:8px}.turn-status{font-size:18px;font-weight:700;margin-bottom:5px;text-align:center;padding:10px;border-radius:8px}.turn-status.your-turn{background-color:#e8f5e9;color:#2e7d32;border:2px solid #2e7d32}.turn-status.opponent-turn{background-color:#ffebee;color:#c62828;border:2px solid #c62828}.map-control-btn{position:absolute;right:20px;z-index:100;width:44px;height:44px;display:flex;justify-content:center;align-items:center;padding:0;border-radius:6px;background-color:var(--bg-paper)}.map-control-btn svg{display:block;pointer-events:none}#zoom-btn{bottom:20px}#menu-btn{top:20px;left:20px;right:auto}#map-status-indicator,#map-end-phase-btn{opacity:0;visibility:hidden;right:-20px;transition:opacity .3s cubic-bezier(.4,0,.2,1),visibility .3s cubic-bezier(.4,0,.2,1),right .3s cubic-bezier(.4,0,.2,1)}#game-wrapper.sidebar-collapsed #map-status-indicator,#game-wrapper.sidebar-collapsed #map-end-phase-btn{opacity:1;visibility:visible;right:20px}#map-status-indicator{top:20px;right:20px;z-index:101;background-color:var(--bg-paper);border:2px solid var(--ink);box-shadow:0 2px 0 var(--ink);box-sizing:border-box;pointer-events:auto;border-radius:6px}#map-status-indicator.player-green{background-color:var(--player-green)}#map-status-indicator.player-grey{background-color:var(--player-grey)}#map-status-indicator .status-symbol{font-size:20px;font-weight:800;color:var(--ink);text-transform:uppercase;display:flex;justify-content:center;align-items:center;text-shadow:0 1px 0px rgba(255,255,255,.5);letter-spacing:-1px}#supply-btn,#hide-units-btn{bottom:74px}#hide-cards-btn{bottom:128px}#map-log-btn{bottom:182px;opacity:0;visibility:hidden;right:-20px;pointer-events:none;transition:opacity .3s cubic-bezier(.4,0,.2,1),visibility .3s cubic-bezier(.4,0,.2,1),right .3s cubic-bezier(.4,0,.2,1),margin-top .05s ease,background-color .1s ease}#map-rules-btn{bottom:236px;opacity:0;visibility:hidden;right:-20px;pointer-events:none;transition:opacity .3s cubic-bezier(.4,0,.2,1),visibility .3s cubic-bezier(.4,0,.2,1),right .3s cubic-bezier(.4,0,.2,1),margin-top .05s ease,background-color .1s ease}#map-scenario-btn{bottom:290px;opacity:0;visibility:hidden;right:-20px;pointer-events:none;transition:opacity .3s cubic-bezier(.4,0,.2,1),visibility .3s cubic-bezier(.4,0,.2,1),right .3s cubic-bezier(.4,0,.2,1),margin-top .05s ease,background-color .1s ease}#ai-heatmap-btn{bottom:344px}#select-btn{top:20px;right:20px}#dropper-btn{top:128px;right:20px}#paint-btn{top:74px;right:20px}#select-btn.active,#dropper-btn.active,#paint-btn.active{background-color:#e3f2fd;color:#1565c0}#game-wrapper.sidebar-collapsed #map-scenario-btn,#game-wrapper.sidebar-collapsed #map-rules-btn,#game-wrapper.sidebar-collapsed #map-log-btn{opacity:1;visibility:visible;pointer-events:auto;right:20px}#map-end-phase-btn{top:74px;right:20px;pointer-events:none;transition:opacity .3s cubic-bezier(.4,0,.2,1),visibility .3s cubic-bezier(.4,0,.2,1),right .3s cubic-bezier(.4,0,.2,1),margin-top .05s ease,background-color .1s ease}#game-wrapper.sidebar-collapsed #map-end-phase-btn{pointer-events:auto}#map-end-phase-btn:active:not(:disabled),#crt-btn:active:not(:disabled),#map-log-btn:active:not(:disabled){margin-top:1px!important;margin-bottom:-1px!important;box-shadow:0 0 0 var(--ink);transition:margin-top .05s ease!important}#sidebar-toggle-btn{top:50%;transform:translateY(-50%);right:20px;transition:right .3s cubic-bezier(.4,0,.2,1),transform .05s ease,background-color .1s ease}#sidebar-toggle-btn:active{transform:translateY(-50%) translateY(2px)}#sidebar-toggle-btn svg{transition:transform .3s ease}#game-wrapper.sidebar-collapsed #sidebar-toggle-btn svg{transform:rotate(180deg)}#supply-btn.active{background-color:#c5d5a9;color:#4e6b31}#hide-units-btn.active,#hide-cards-btn.active{background-color:#ffebee;color:#c62828}#ai-heatmap-btn.active{background-color:#e3f2fd;color:#1565c0}#unitLayer,#supplyLayer,.supply-source-hex{transition:opacity .1s ease,visibility .1s ease}#unitLayer.hidden,#supplyLayer.hidden,.supply-hidden .supply-source-hex{opacity:0!important;visibility:hidden!important;pointer-events:none}.baseHex{fill:#fafafa;stroke:var(--ink)}#editor-controls{width:250px;padding:10px;box-sizing:border-box;overflow-y:auto}#editor-controls button,#import-export .custom-file-upload{display:block;width:100%;margin-bottom:5px;padding:8px;border:1px solid var(--border-ink);background-color:#fff;color:var(--ink);cursor:pointer;text-align:center;box-sizing:border-box}#terrain-palette button.selected,#unit-palette button.selected,#obstacle-palette button.selected,#supply-city-controls button.selected,#view-controls button.selected,#supply-settings button.selected{background-color:#a2ba79;color:#fff;border-color:#a2ba79}.palette-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.palette-item{width:100%;aspect-ratio:15 / 17;border:2px solid transparent;cursor:pointer;background-color:var(--surface-2, #f5f5f5);border-radius:4px;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none;transition:transform .1s ease,border-color .1s ease}.palette-item.selected{border-color:var(--primary, #d32f2f);background-color:#e8e8e8}.palette-item:active{transform:scale(.95)}.palette-item svg{max-width:80%;max-height:80%}#map-size{display:flex;flex-wrap:wrap;gap:10px}.player-selector{display:flex}.player-button{width:40px;height:40px;border:4px solid transparent;cursor:pointer;margin-right:10px;box-sizing:border-box}.player-button.grey{background-color:var(--player-grey)}.player-button.green{background-color:var(--player-green)}.player-button.selected{border-color:var(--ink)}.supply-edge-selector-row{margin-block-end:1em}.supply-edge-selector{display:flex;gap:10px}.supply-edge-button{width:40px;height:40px;border:4px solid transparent;cursor:pointer;display:flex;justify-content:center;align-items:center;font-size:12px;box-sizing:border-box}.supply-edge-button.grey{background-color:var(--player-grey)}.supply-edge-button.green{background-color:var(--player-green)}.supply-edge-button svg polyline{fill:none;stroke:var(--ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.supply-edge-button.selected{border-color:var(--ink)}#map-size h3{flex-basis:100%}#map-size>div{display:flex;flex-direction:column;flex-basis:calc(50% - 5px)}#map-size label{margin-bottom:5px}#map-size input{width:100%;box-sizing:border-box;border:1px solid var(--border-ink);background:#fafafa;color:var(--ink);padding:5px;border-radius:4px}#map-size button{flex-basis:100%}#hex-grid,#main{background-color:#f2f2f2;overflow:hidden;width:100%;height:100%}.menu-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#1f1f1fd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;display:flex;justify-content:center;align-items:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}.menu-overlay.active~.menu-overlay.active,.menu-overlay.active~.dialog-overlay.active,.dialog-overlay.active~.dialog-overlay.active{background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.menu-overlay.active:has(~.menu-overlay.active) .menu-content,.menu-overlay.active:has(~.dialog-overlay.active) .menu-content{opacity:.3;filter:grayscale(.5) blur(2px);pointer-events:none}.instructions-body{width:100%;overflow-y:auto;padding-right:15px;margin-bottom:20px;text-align:left}.instructions-body h3{margin-top:25px;margin-bottom:8px;font-size:14px;color:var(--ink-muted);text-transform:uppercase;font-weight:700;letter-spacing:.5px}.instructions-body p{font-size:16px;line-height:1.6;color:var(--ink);margin-bottom:15px}.instructions-body small{font-size:14px;display:block;line-height:1.5}.instructions-body ul{margin-bottom:20px;padding-left:20px}.instructions-body li{font-size:15px;line-height:1.6;color:var(--ink);margin-bottom:8px}.instructions-body section:first-child h3{margin-top:0}.instructions-body::-webkit-scrollbar{width:8px}.instructions-body::-webkit-scrollbar-track{background:transparent}.instructions-body::-webkit-scrollbar-thumb{background:#0000001a;border-radius:4px}.instructions-body::-webkit-scrollbar-thumb:hover{background:#0003}.instructions-table{width:100%;border-collapse:collapse;margin-bottom:20px;font-size:15px;background:#fafafa}.instructions-table th,.instructions-table td{border:1px solid var(--ink);padding:8px;text-align:center;color:var(--ink)}.instructions-table th{background-color:#fff;font-weight:700}.menu-overlay.active{opacity:1;visibility:visible;pointer-events:auto}.menu-content{background:#fafafa;padding:40px;border-radius:16px;border:3px solid var(--ink);box-shadow:0 20px 50px #1f1f1f4d;width:400px;display:flex;flex-direction:column;align-items:center;gap:20px;transition:opacity .2s ease,filter .2s ease}.instructions-content{width:700px;max-width:90vw;max-height:85vh}.menu-title{font-size:28px;margin:0;text-align:center;letter-spacing:2px;color:var(--ink)}.menu-options{width:100%;display:flex;flex-direction:column;gap:15px}.menu-options .btn{width:100%}.menu-group{display:flex;flex-direction:column;gap:10px}.menu-label{font-size:14px;color:var(--ink-muted);text-transform:uppercase;font-weight:700;text-align:center;letter-spacing:.5px}.toggle-group{display:flex;gap:5px}.toggle-group .btn{flex:1}.toggle-group .btn.active{background-color:var(--player-green);color:#4e6b31;border-color:#4e6b31}.btn.danger{background-color:#ffebee;color:#c62828;border-color:#c62828}.status-label{margin-top:10px;color:#2e7d32;display:block}.scenario-list{width:100%;display:flex;flex-direction:column;gap:10px}.scenario-card{display:block;cursor:pointer}.scenario-card input[type=radio]{position:absolute;opacity:0;width:0;height:0}.scenario-card-inner{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border:2px solid var(--ink);border-radius:8px;background:#fff;box-shadow:0 2px 0 var(--ink);transition:background-color .1s ease,border-color .1s ease}.scenario-card:hover .scenario-card-inner{background-color:#fafafa}.scenario-card input[type=radio]:checked+.scenario-card-inner{background-color:#e8f5e0;border-color:#4e6b31;box-shadow:0 2px #4e6b31}.scenario-name{font-size:16px;font-weight:700;color:var(--ink)}.scenario-meta{font-size:13px;color:var(--ink-muted);font-weight:700;letter-spacing:.5px}.scenario-actions{width:100%;display:flex;gap:10px;margin-top:5px}.scenario-actions .btn{flex:1}.dialog-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#1f1f1f66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:3000;display:flex;justify-content:center;align-items:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}.dialog-overlay.active{opacity:1;visibility:visible;pointer-events:auto}.dialog-content{background:#fafafa;padding:30px;border-radius:12px;border:3px solid var(--ink);box-shadow:0 10px 30px #1f1f1f33;max-width:500px;width:90%;display:flex;flex-direction:column;gap:20px;animation:dialogPop .2s cubic-bezier(.175,.885,.32,1.275)}@keyframes dialogPop{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.dialog-content p{margin:0;font-size:16px;line-height:1.5;text-align:left;font-weight:500;white-space:pre-wrap;word-break:break-word}.dialog-buttons{display:flex;gap:15px}.dialog-buttons .btn{flex:1}@media (max-width: 1200px){#game-wrapper{width:100vw;height:100vh;margin:0;border:none;border-radius:0}}@media (max-width: 800px) or (orientation: portrait){#game-wrapper{flex-direction:column;overflow-y:auto;width:100vw;height:100vh;margin:0;border:none;border-radius:0}#map-container{width:100vw;height:60vh;flex:none}#info-area{width:100vw!important;height:auto;min-height:40vh;border-left:none;border-top:3px solid var(--ink);box-shadow:0 -1px #ffffff80;overflow-y:visible;margin-left:0}#game-wrapper.sidebar-collapsed #info-area{height:0;min-height:0;transform:translateY(100%);width:100vw}.map-control-btn{width:50px;height:50px}#map-status-indicator,#map-end-phase-btn{right:15px}#sidebar-toggle-btn{top:calc(60vh - 70px);left:50%;right:auto;transform:translate(-50%) rotate(90deg);box-shadow:2px 0 0 var(--ink);transition:transform .05s ease,background-color .1s ease}#sidebar-toggle-btn:active{transform:translate(-50%) rotate(90deg) translateY(2px);box-shadow:0 0 0 var(--ink)}#game-wrapper.sidebar-collapsed #sidebar-toggle-btn{top:calc(100vh - 70px);left:50%;right:auto;transform:translate(-50%) rotate(90deg);box-shadow:2px 0 0 var(--ink);transition:transform .05s ease,background-color .1s ease}#game-wrapper.sidebar-collapsed #sidebar-toggle-btn:active{transform:translate(-50%) rotate(90deg) translateY(2px);box-shadow:0 0 0 var(--ink)}}.startup-screen{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:var(--bg-page);z-index:1000;display:flex;justify-content:center;align-items:center;transition:opacity .5s ease;overflow:hidden}.startup-screen.hidden{opacity:0;pointer-events:none}#startup-cover-img{margin:20px;height:calc(100vh - 40px);width:calc(100vw - 40px);max-width:calc((100vh - 40px) * 16 / 9);max-height:calc(100vw - 40px);object-fit:cover;object-position:center;opacity:0;transition:opacity 1s ease}#startup-cover-img.loaded{opacity:1}.startup-loader{width:48px;height:48px;border:5px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite;position:absolute}@keyframes spin{to{transform:rotate(360deg)}}#startup-menu-btn{top:40px;left:40px;opacity:0;transition:opacity 1s ease;pointer-events:none}.startup-screen.loaded:not(.hidden) #startup-menu-btn{opacity:1;pointer-events:auto}@media (max-width: 1200px){#startup-cover-img{margin:0;height:100dvh;width:100vw;max-width:calc(100dvh * 16 / 9);max-height:100vw}}.pick-card-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle,#0000 30%,#0006);backdrop-filter:none;-webkit-backdrop-filter:none;display:none;justify-content:center;align-items:center;z-index:150;pointer-events:none;animation:fadeIn .4s cubic-bezier(.23,1,.32,1)}.pick-card-overlay.active{display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.pick-card-content{background:#ffffff26;backdrop-filter:blur(25px) saturate(200%);-webkit-backdrop-filter:blur(25px) saturate(200%);border-radius:20px;border:1px solid rgba(255,255,255,.3);box-shadow:0 15px 45px #00000080;padding:10px;width:fit-content;height:fit-content;pointer-events:auto}.pick-card-list{display:flex;gap:15px}#pick-card-list .card{cursor:pointer;transform:scale(1);transition:transform .4s cubic-bezier(.23,1,.32,1),box-shadow .4s ease}#pick-card-list .card:hover{transform:scale(1.05) translateY(-10px);box-shadow:0 20px 40px #0009}@media (max-width: 800px) or (orientation: portrait){#startup-menu-btn{top:20px;left:20px}}.card-area{position:absolute;bottom:0;left:50%;transform:translate(-50%);display:flex;justify-content:center;align-items:flex-end;gap:var(--card-gap);z-index:200;pointer-events:none;transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .4s ease,gap .4s cubic-bezier(.4,0,.2,1);width:calc((var(--max-cards) - 1) * (var(--card-width) + var(--card-hand-margin-right) + var(--card-gap)) + var(--card-visual-width) + 2 * var(--card-padding));background:#ffffff40;backdrop-filter:blur(15px) saturate(180%);-webkit-backdrop-filter:blur(15px) saturate(180%);padding:0 var(--card-padding) var(--card-padding) var(--card-padding);height:calc(var(--card-height) * var(--card-hand-scale) + var(--card-padding));border-radius:calc(30 * var(--map-v-scale)) calc(30 * var(--map-v-scale)) 0 0;border:1px solid rgba(255,255,255,.4);border-bottom:none;box-shadow:0 -10px 40px #00000026,inset 0 1px #ffffff4d}.card-area.hidden{transform:translate(-50%) translateY(200%);opacity:0}.discard-pile,.draw-pile{display:flex;justify-content:center;padding:0;min-height:calc(var(--card-height) * .4 + 20px);width:100%;justify-self:center;overflow:visible}#discard-pile .card,#draw-pile .card{position:relative;width:calc(var(--card-width) * .4);height:calc(var(--card-height) * .4);transform:scale(1);transform-origin:center bottom;margin:0;cursor:pointer;box-shadow:0 4px 10px #0003;border-radius:calc(10 * var(--map-v-scale));z-index:10;transition:transform .6s cubic-bezier(.23,1,.32,1),box-shadow .4s ease}#draw-pile .card:hover{transform:scale(2.5) translate(40px)!important;z-index:1000;box-shadow:0 20px 60px #0006}#discard-pile .card:hover{transform:scale(2.5) translate(-40px)!important;z-index:1000;box-shadow:0 20px 60px #0006}.discard-pile-container{align-self:flex-start;width:100%;margin-top:30px;padding-left:0;overflow-x:hidden}.card{width:var(--card-width);height:var(--card-height);margin-right:var(--card-hand-margin-right);border-radius:calc(20 * var(--map-v-scale));padding:0;box-shadow:0 20px 60px #00000080;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:default;pointer-events:auto;transform-origin:center bottom;transition:transform .6s cubic-bezier(.23,1,.32,1),box-shadow .4s ease,opacity .4s ease,border-color .4s ease;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;transform:scale(var(--card-hand-scale)) translateY(var(--card-base-y));background-color:#fafafa;z-index:10;flex-shrink:0}.card:last-child{margin-right:0}.card:hover{z-index:10}.card:not(.selected){cursor:pointer}.card:hover{transform:scale(var(--card-hover-scale)) translateY(var(--card-hover-y))!important;z-index:100;box-shadow:0 calc(15 * var(--map-v-scale)) calc(45 * var(--map-v-scale)) #0006}.card.selected{border:calc(3 * var(--map-v-scale)) solid var(--ink);box-shadow:0 calc(15 * var(--map-v-scale)) calc(45 * var(--map-v-scale)) #0006;transform:scale(var(--card-selected-scale)) translateY(var(--card-selected-y));z-index:50}.card.selected:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border:calc(12 * var(--map-v-scale)) solid var(--ink);border-radius:calc(17 * var(--map-v-scale));pointer-events:none;z-index:100}.card-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;display:flex;flex-direction:column;z-index:20;--overlay-scale: 1}.discard-pile .card-overlay,.draw-pile .card-overlay{--overlay-scale: .4}.card-overlay-top,.card-overlay-bottom{position:absolute;left:10%;right:10%;display:flex;flex-direction:column;align-items:center;text-align:center}.card-overlay-top{top:1.5%;height:22%;justify-content:center}.card-overlay-bottom{top:84%;height:18%;justify-content:flex-start;padding-top:0}.card-name-text{font-size:calc(26 * var(--map-v-scale) * var(--overlay-scale));font-weight:900;color:#4a1c1c;text-transform:uppercase;line-height:.9;margin-bottom:calc(3 * var(--map-v-scale) * var(--overlay-scale));letter-spacing:.2px}.card-info-text{font-size:calc(13 * var(--map-v-scale) * var(--overlay-scale));font-weight:700;color:#333;line-height:1.2;max-width:90%}.sector-blue{color:#069;font-weight:800}.card-summary-text{font-size:calc(16 * var(--map-v-scale) * var(--overlay-scale));font-weight:800;color:#222;line-height:1;margin-bottom:calc(2 * var(--map-v-scale) * var(--overlay-scale))}.card-special-rules{font-size:calc(10.5 * var(--map-v-scale) * var(--overlay-scale));font-weight:600;color:#444;line-height:1.1;max-width:95%}@keyframes cardSlideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(400px);opacity:0}}.card.playing{animation:cardSlideDown .4s cubic-bezier(.55,.055,.675,.19) forwards!important;pointer-events:none!important;z-index:1000!important}.card.collapsing{width:0!important;margin-left:-7.5px!important;margin-right:-7.5px!important;padding-left:0!important;padding-right:0!important;border-left-width:0!important;border-right-width:0!important;opacity:0!important;transition:all .35s cubic-bezier(.4,0,.2,1)!important}.card.collapsing>*{min-width:120px}@keyframes cardFadeIn{0%{opacity:0;transform:scale(.8) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes btnPulse{0%{transform:scale(1);box-shadow:0 4px 10px #0000001a}50%{transform:scale(1.02);box-shadow:0 4px 15px #0003;border-color:var(--ink)}to{transform:scale(1);box-shadow:0 4px 10px #0000001a}}.btn-pulse{animation:btnPulse 2s infinite ease-in-out;border-color:var(--ink)!important}@keyframes cardDrawRight{0%{transform:scale(var(--card-hand-scale)) translate(300px) translateY(var(--card-base-y));opacity:0}to{transform:scale(var(--card-hand-scale)) translate(0) translateY(var(--card-base-y));opacity:1}}.card.new{animation:cardDrawRight .8s cubic-bezier(.23,1,.32,1) forwards}.card.just-played{animation:cardFadeIn .3s cubic-bezier(.215,.61,.355,1) forwards!important}.card-title,.card-orders,.card-sector-display,.card-description{opacity:0}.card-sector-box{flex:1;display:flex;justify-content:center;align-items:center;font-size:24px;font-weight:800;color:#d32f2f;line-height:1}.card-sector-box.center{border-left:2px solid var(--ink);border-right:2px solid var(--ink)}.card-description{font-size:10px;color:var(--ink-muted)}.dice-overlay{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2000;display:flex;flex-direction:column;align-items:center;gap:30px;pointer-events:none;opacity:0;transition:opacity .1s ease}.dice-overlay.active{opacity:1;pointer-events:auto}.dice-tray{display:flex;gap:15px;perspective:1000px;padding:40px 60px;background:#fffffff2;border:3px solid var(--ink);border-radius:20px;box-shadow:0 15px 40px #0003,inset 0 0 20px #0000000d}.die{width:60px;height:60px;display:flex;justify-content:center;align-items:center;opacity:0;transform:translateY(-50px) scale(.5) rotate(180deg);transition:transform .4s cubic-bezier(.175,.885,.32,1.275),opacity .2s ease}.die.reveal{opacity:1;transform:translateY(0) scale(1) rotate(0)}.die.infantry,.die.tank,.die.grenade,.die.flag,.die.star{background:none;border:none}.dice-summary{background:#fff;padding:15px 30px;border-radius:50px;font-size:24px;font-weight:800;color:var(--ink);border:3px solid var(--ink);box-shadow:0 4px 15px #0000001a;transform:translateY(20px);opacity:0;transition:all .4s ease}.dice-overlay.active .dice-summary{transform:translateY(0);opacity:1}.die svg{width:40px;height:40px}@keyframes die-shake{0%{transform:translate(0) rotate(0)}25%{transform:translate(2px,-2px) rotate(5deg)}50%{transform:translate(-2px,2px) rotate(-5deg)}75%{transform:translate(2px,2px) rotate(5deg)}to{transform:translate(0) rotate(0)}}.die.rolling{animation:die-shake .1s infinite}
