:root{--imperial-purple-light: #9872DE;--imperial-purple-medium: #6A1B9B;--imperial-purple-dark: #4A0C6A;--imperial-white: #FFFFFF;--imperial-white-light: #F5F5F5;--imperial-silver: #E0E0E0;--imperial-white-dark: #CCCCCC;--stone-texture: linear-gradient(135deg, rgba(90, 90, 90, .1) 0%, rgba(70, 70, 70, .05) 25%, rgba(100, 100, 100, .08) 50%, rgba(80, 80, 80, .06) 75%, rgba(90, 90, 90, .1) 100%);--wood-texture: linear-gradient(90deg, rgba(101, 67, 33, .2) 0%, rgba(139, 90, 43, .15) 50%, rgba(101, 67, 33, .2) 100%);--imperial-panel-bg: rgba(42, 40, 50, 1);--imperial-panel-bg-gradient: linear-gradient(135deg, rgba(42, 40, 50, 1) 0%, rgba(50, 45, 60, 1) 100%);--imperial-panel-bg-light: linear-gradient(135deg, rgba(55, 52, 65, 1) 0%, rgba(65, 60, 75, 1) 100%);--imperial-border-white: 2px solid var(--imperial-white);--imperial-border-stone: 3px solid rgba(255, 255, 255, .4);--imperial-border-ornate: 4px solid;--imperial-border-color: linear-gradient(135deg, var(--imperial-white) 0%, var(--imperial-silver) 50%, var(--imperial-white) 100%);--imperial-shadow-small: 0 4px 12px rgba(0, 0, 0, .3);--imperial-shadow-medium: 0 8px 24px rgba(0, 0, 0, .4);--imperial-shadow-large: 0 12px 40px rgba(0, 0, 0, .5);--imperial-glow: 0 0 20px rgba(106, 27, 155, .3);--imperial-glow-hover: 0 0 30px rgba(152, 114, 222, .4);--imperial-text-light: #F5F5F5;--imperial-text-white: var(--imperial-white);--imperial-text-muted: rgba(245, 245, 245, .7)}.imperial-panel{position:relative;background:var(--imperial-panel-bg);border:2px solid rgba(255,255,255,.2);border-radius:16px;box-shadow:var(--imperial-shadow-medium);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden}.imperial-panel:before{content:"";position:absolute;inset:0;background:var(--stone-texture);opacity:.3;pointer-events:none;z-index:0}.imperial-panel>*{position:relative;z-index:1}.imperial-border-ornate{position:relative;padding:4px;background:var(--imperial-border-color);border-radius:18px;box-shadow:var(--imperial-shadow-medium)}.imperial-border-ornate:before{content:"";position:absolute;inset:2px;background:var(--imperial-panel-bg);border-radius:16px;z-index:0}.imperial-border-ornate>*{position:relative;z-index:1}.imperial-corners:after,.imperial-corners:before{content:"";position:absolute;width:20px;height:20px;border-style:solid;border-color:var(--imperial-white)}.imperial-corners:before{top:-2px;left:-2px;border-width:3px 0 0 3px;border-top-left-radius:8px}.imperial-corners:after{bottom:-2px;right:-2px;border-width:0 3px 3px 0;border-bottom-right-radius:8px}.imperial-button{position:relative;background:#2a2832;color:var(--imperial-text-light);border:2px solid rgba(255,255,255,.3);padding:12px 24px;border-radius:8px;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;box-shadow:var(--imperial-shadow-small);overflow:hidden}.imperial-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.2) 50%,transparent 100%);transition:left .5s ease}.imperial-button:hover{background:linear-gradient(135deg,var(--imperial-purple-dark) 0%,var(--imperial-purple-medium) 100%);border-color:var(--imperial-purple-light);box-shadow:var(--imperial-shadow-medium),var(--imperial-glow-hover);transform:translateY(-2px)}.imperial-button:hover:before{left:100%}.imperial-button:active{transform:translateY(0);box-shadow:var(--imperial-shadow-small)}.imperial-button:disabled{background:linear-gradient(135deg,#6a1b9b80,#4a0c6a80);border-color:#ffffff4d;color:#f5f5f580;cursor:not-allowed;box-shadow:none}.imperial-card{position:relative;background:var(--imperial-panel-bg);border:3px solid var(--imperial-white);border-radius:12px;box-shadow:var(--imperial-shadow-medium);overflow:hidden;transition:all .3s ease}.imperial-card:before{content:"";position:absolute;inset:0;background:var(--stone-texture);opacity:.3;pointer-events:none}.imperial-card:hover{transform:translateY(-4px);box-shadow:var(--imperial-shadow-large),var(--imperial-glow);border-color:var(--imperial-white-light)}.imperial-card.selected{border-color:var(--imperial-white-light);box-shadow:var(--imperial-shadow-large),var(--imperial-glow);transform:scale(1.05)}.imperial-resource-icon{filter:drop-shadow(0 2px 4px rgba(74,12,106,.5))}.imperial-resource-value{color:var(--imperial-text-light);text-shadow:0 2px 4px rgba(0,0,0,.8);font-weight:700}.imperial-resource-bonus{color:var(--imperial-white);text-shadow:0 2px 4px rgba(255,255,255,.6)}.imperial-menu{background:var(--imperial-panel-bg);border:2px solid rgba(255,255,255,.2);border-radius:12px;box-shadow:var(--imperial-shadow-medium);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.imperial-menu-item{padding:8px 16px;border-radius:8px;border:none;background:#ffffff1a;color:var(--imperial-text-light);font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:capitalize}.imperial-menu-item:hover{background:#fff3;box-shadow:var(--imperial-shadow-small)}.imperial-menu-item.active{background:var(--imperial-purple-medium);color:var(--imperial-white);box-shadow:var(--imperial-shadow-small),var(--imperial-glow)}.imperial-dialog{position:relative;background:#2a2832;border:2px solid rgba(255,255,255,.3);border-radius:15px;padding:25px 30px;box-shadow:var(--imperial-shadow-large)}.imperial-dialog:before{content:"";position:absolute;inset:0;background:var(--stone-texture);opacity:.4;pointer-events:none}.imperial-dialog:after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent 0%,var(--imperial-purple-medium) 50%,transparent 100%)}.imperial-title{color:var(--imperial-white);text-shadow:0 2px 4px rgba(0,0,0,.8),0 0 10px rgba(255,255,255,.5);font-family:Alpino Black,Calder LC,sans-serif;text-transform:uppercase;letter-spacing:3px}.imperial-subtitle{color:var(--imperial-text-muted);font-style:italic;text-shadow:0 2px 4px rgba(0,0,0,.6)}.imperial-wood-panel{position:relative;background:linear-gradient(135deg,#654321,#8b5a2b);border:3px solid var(--imperial-white);border-radius:12px;box-shadow:var(--imperial-shadow-medium);overflow:hidden}.imperial-wood-panel:before{content:"";position:absolute;inset:0;background:var(--wood-texture);opacity:.8;pointer-events:none}@keyframes imperial-glow{0%,to{box-shadow:var(--imperial-shadow-medium)}50%{box-shadow:var(--imperial-shadow-medium),var(--imperial-glow)}}@keyframes imperial-shine{0%{left:-100%}to{left:100%}}.imperial-pulse{animation:imperial-glow 2s ease-in-out infinite}.imperial-text-white{color:var(--imperial-white)}.imperial-text-silver{color:var(--imperial-silver)}.imperial-divider{height:2px;background:linear-gradient(90deg,transparent 0%,var(--imperial-white) 50%,transparent 100%);margin:20px 0}.imperial-backdrop{background:radial-gradient(circle at center,#4a0c6ae6,#000000f2)}@font-face{font-family:Calder LC;src:url(/assets/fonts/Calder-LC.woff2) format("woff2"),url(/assets/fonts/Calder-LC.woff) format("woff"),url(/assets/fonts/Calder-LC.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Alpino Black;src:url(/assets/fonts/Alpino-Black.woff2) format("woff2"),url(/assets/fonts/Alpino-Black.woff) format("woff"),url(/assets/fonts/Alpino-Black.ttf) format("truetype");font-weight:900;font-style:normal;font-display:swap}*{font-family:Calder LC,system-ui,Avenir,Helvetica,Arial,sans-serif}:root{font-family:Calder LC,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:var(--imperial-text-light);background:linear-gradient(135deg,var(--imperial-purple-dark) 0%,#000000 100%);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:Alpino Black,Calder LC,sans-serif;text-transform:uppercase}a{font-weight:500;color:var(--imperial-gold-light);text-decoration:inherit;transition:color .3s ease}a:hover{color:var(--imperial-silver)}body{margin:0;min-width:320px;min-height:100vh}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:2px solid var(--imperial-gold);padding:.6em 1.2em;font-size:1em;font-weight:600;font-family:inherit;background:linear-gradient(135deg,var(--imperial-purple-medium) 0%,var(--imperial-purple-dark) 100%);color:var(--imperial-text-light);cursor:pointer;transition:all .3s ease;box-shadow:var(--imperial-shadow-small)}button:hover{border-color:var(--imperial-gold-light);box-shadow:var(--imperial-shadow-medium),var(--imperial-glow);transform:translateY(-2px)}button:focus,button:focus-visible{outline:2px solid var(--imperial-gold-light);outline-offset:2px}.App{width:100vw;height:100vh;position:relative;overflow:hidden;background:var(--selected-tile-color, #282c34);transition:all .3s ease-out}body{margin:0;padding:0;font-family:Arial,sans-serif}#root{margin:0;padding:0}@media (max-width: 768px){.resource-name-desktop{display:none!important}.resource-name-mobile{display:inline!important}canvas{touch-action:manipulation}body{overflow:hidden;-webkit-overflow-scrolling:touch}input,select,textarea{font-size:16px}}@media (min-width: 769px) and (max-width: 1024px){.resource-name-desktop{display:inline!important}.resource-name-mobile{display:none!important}}@media (min-width: 1025px){.resource-name-desktop{display:inline!important}.resource-name-mobile{display:none!important}}@media (hover: none){.tile-card-base{height:clamp(50px,10vw,70px)!important}button,.clickable{min-height:44px;min-width:44px}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){body{font-weight:400}}@media (max-width: 768px) and (orientation: landscape){.resource-display{padding:clamp(4px,1vw,8px) clamp(8px,2vw,16px)!important;gap:clamp(4px,1vw,12px)!important}.tile-cards{padding:clamp(2px,1vw,10px)!important}}@media (max-width: 768px) and (orientation: portrait){.tile-cards-container{overflow-x:auto;overflow-y:visible;padding-bottom:10px}}
