*{box-sizing:border-box}body{margin:0;background:#050817;color:#e8f3ff;font:16px Arial,sans-serif;background-image:radial-gradient(circle at 50% 10%,#16275b 0,transparent 35%),linear-gradient(125deg,#050817,#090c20)}button,.import{font:700 13px monospace;background:#152858;color:#e8f3ff;border:1px solid #4874be;padding:9px 12px;cursor:pointer;border-radius:4px}.danger{border-color:#ff5d70;color:#ffb6bd}.primary{background:#254eff;border-color:#7ba1ff;font-size:15px}.import input{display:none}header{min-height:72px;padding:14px 3vw;display:flex;align-items:center;gap:25px;border-bottom:1px solid #243767;background:#070b1ddd}.brand{font:800 26px monospace}.brand span{color:#ff4c9a}.brand small{display:block;font-size:8px;letter-spacing:2px;color:#78a3d6}#turnBanner{margin-left:auto;color:#ffca67;font:600 13px monospace}nav{display:flex;flex-wrap:wrap;gap:6px}main{display:grid;grid-template-columns:300px 1fr 300px;gap:12px;padding:15px 3vw 5px}.player-area,#logPanel{background:#0a1028cc;border:1px solid #253f70;border-radius:8px;padding:13px}.area-title{font:700 14px monospace;color:#8fb9ff}.core{margin:13px 0;padding:12px;background:#0d1833}.meter{margin-top:8px}.meter label{display:flex;justify-content:space-between;font-size:13px}.meter i{display:block;height:6px;background:#172643;margin-top:3px}.meter em{display:block;height:100%}.stats{padding-top:10px;color:#f7d270}.units{display:grid;gap:6px}.units strong{color:#7e9ed5;font:600 10px monospace;margin-top:8px}.units span,.drone{font-size:13px;text-align:left;padding:5px;border:0;background:#13213f}.drone.used{opacity:.45}#arena{min-height:365px;position:relative;border:1px solid #28477b;border-radius:8px;overflow:hidden;background:radial-gradient(#152957,#060b1d)}#threeCanvas{height:365px}#threeCanvas canvas{width:100%;height:100%}#centerHud{position:absolute;inset:18px 18px auto;display:flex;justify-content:space-between;pointer-events:none}.briscola{max-width:310px;padding:10px;background:#080d22d9;border-left:3px solid #ff9d35}.briscola>*{display:block}.briscola b{color:#ffc876;font:600 15px monospace;margin:4px 0}.briscola small{font:10px monospace;color:#879fcd}.moves{padding:10px;background:#080d22d9;height:min-content;color:#8bd8ff;font:13px monospace}#logPanel{margin:0 3vw;height:185px;overflow:auto}#logPanel h2{font:600 13px monospace;margin:0 0 7px}#summary{color:#ffdb8c;padding:5px 0}#log p{margin:3px 0;border-left:2px solid #5974a9;padding-left:7px}.laser{border-color:#ff5d70!important}.magic{border-color:#ff57df!important}footer{padding:8px 3vw 18px}#hand{display:flex;gap:9px;overflow-x:auto;padding:10px 0;min-height:205px}.card{flex:0 0 142px;min-height:178px;display:flex;flex-direction:column;align-items:start;gap:7px;padding:10px;border:2px solid var(--c);background:linear-gradient(150deg,#162952,#0c1026);transition:.18s}.card:hover,.card.selected{transform:translateY(-11px);box-shadow:0 0 17px var(--c)}.card span{font:10px monospace;color:var(--c)}.card b{font-size:16px}.card i{font-style:normal;color:#ffe07a}.card small{text-align:left;font:12px Arial;line-height:1.1;color:#c8d8f3}#actions{display:flex;gap:12px;align-items:center}#selected{flex:1;color:#a9c3ee}.modal{position:fixed;inset:0;background:#02040bd9;z-index:5;display:grid;place-items:center;padding:20px}.modal article{max-width:700px;max-height:85vh;overflow:auto;background:#101a37;border:1px solid #507bc4;padding:25px;position:relative;line-height:1.35}.close{position:absolute;right:8px;top:8px;font-size:20px;padding:3px 9px}.pool{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin-top:14px;font-size:13px;color:#c8d8f3}@media(max-width:900px){main{grid-template-columns:1fr 1fr}.player-area{min-width:0}#arena{grid-column:1/3;grid-row:1}header{align-items:flex-start;flex-wrap:wrap}}@media(max-width:600px){header{padding:12px}.brand{font-size:21px}main{padding:10px;grid-template-columns:1fr}.player-area{font-size:14px}#arena{grid-column:auto;grid-row:auto}#threeCanvas{height:250px}#centerHud{inset:8px}.briscola{max-width:65%;font-size:12px}#logPanel,footer{margin:0;padding:10px}.card{flex-basis:126px;min-height:165px}.pool{grid-template-columns:1fr}}
