.felt-bg{background-color:theme("colors.primary-container");background-image:radial-gradient(circle at 50% 0,#ffffff0d 0%,#0000 60%),radial-gradient(circle at 50% 100%,#0006 0%,#0000 80%)}.btn-tactile{background:linear-gradient(180deg, theme("colors.secondary") 0%, theme("colors.secondary-container") 100%);border-top:1px solid #ffffff4d;transition:all .1s ease-in-out;box-shadow:inset 0 1px 1px #fff6,0 4px 6px #00000080,0 8px 15px #0000004d}.btn-tactile:active{transform:translateY(2px)scale(.98);box-shadow:inset 0 2px 4px #0003,0 1px 2px #00000080}.glass-panel{-webkit-backdrop-filter:blur(24px);background:#121416bf;border:1px solid #e9c34926;box-shadow:0 10px 30px #00000080,inset 0 1px #ffffff0d}.card-3d-hover{transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.card-3d-hover:hover{transform:translateY(-4px)rotateX(2deg)}body{background-blend-mode:overlay, normal;background-color:#0f4d22;background-image:url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100' height='100' filter='url(%23noise)' opacity='0.15'/%3E%3C/svg%3E"),radial-gradient(circle,#1b6b33 0%,#0a3315 100%);overflow:hidden}.card-shadow{box-shadow:0 4px 6px #00000080,0 1px 3px #0000004d}.glass-panel{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#282a2cd9;border:1px solid #e9c3494d}.card-slot{min-width:100px;min-height:140px;transition:background-color .2s,box-shadow .2s}.card-slot.drag-over{background-color:#ffffff1a;border-radius:.5rem;box-shadow:inset 0 0 10px #b0f1c780}.card.dragging{opacity:.5;z-index:100}.card,.cursor-move{touch-action:none}.group-container{border-radius:.75rem;align-items:center;min-width:120px;min-height:160px;padding:.5rem;transition:all .2s;display:flex}.group-container.drag-over{background-color:#0f513266;border:2px dashed #b0f1c7}.modal{z-index:50;background-color:#0006;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0;overflow:auto}.modal.hidden{display:none}.toast{color:#fff;z-index:1000;background-color:#f44336;border-radius:8px;padding:16px;transition:opacity .3s;position:fixed;bottom:20px;right:20px}.toast.hidden{opacity:0;pointer-events:none}.dnd-poly-drag-image{opacity:.5!important}.dnd-poly-drag-image.dnd-poly-snapback{transition-property:transform!important;transition-duration:.25s!important;transition-timing-function:ease-out!important}
