:root{--p31-bg-dark: #0a0b0d;--p31-bg-card: #16213e;--p31-bg-surface: #1a1c23;--p31-border: rgba(255,255,255,.08);--p31-border-hover: rgba(93,202,165,.3);--p31-text-primary: #e8e8e8;--p31-text-secondary: #a0a0a0;--p31-phos-green: #5DCAA5;--p31-danger: #ef4444;--p31-success: #10b981;--p31-gold: #feca57;--p31-radius: 12px;--p31-radius-sm: 8px;--p31-shadow: 0 2px 8px rgba(0,0,0,.2);--p31-shadow-hover: 0 8px 24px rgba(0,0,0,.3);--p31-duration-fast: .15s;--p31-duration-normal: .3s;--p31-ease: cubic-bezier(.4, 0, .2, 1);--p31-ease-spring: cubic-bezier(.34, 1.56, .64, 1)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding:0;background:var(--p31-bg-dark);color:var(--p31-text-primary);font-family:SF Mono,Fira Code,monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--p31-bg-dark)}::-webkit-scrollbar-thumb{background:var(--p31-bg-surface);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--p31-border-hover)}.glass-panel{background:#16213e99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--p31-border);border-radius:var(--p31-radius);box-shadow:var(--p31-shadow);transition:border-color var(--p31-duration-normal) var(--p31-ease),box-shadow var(--p31-duration-normal) var(--p31-ease)}.glass-panel:hover{border-color:var(--p31-border-hover);box-shadow:var(--p31-shadow-hover)}.glass-elevated{background:#1a1c23cc;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--p31-border);border-radius:var(--p31-radius);box-shadow:0 4px 16px #00000040;transition:border-color var(--p31-duration-normal) var(--p31-ease),box-shadow var(--p31-duration-normal) var(--p31-ease),transform var(--p31-duration-normal) var(--p31-ease)}.glass-elevated:hover{border-color:var(--p31-border-hover);box-shadow:var(--p31-shadow-hover);transform:translateY(-2px)}.glass-card{background:#16213e80;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--p31-border);border-radius:var(--p31-radius-sm);box-shadow:var(--p31-shadow);transition:border-color var(--p31-duration-normal) var(--p31-ease),box-shadow var(--p31-duration-normal) var(--p31-ease),transform var(--p31-duration-normal) var(--p31-ease)}.glass-card:hover{border-color:var(--p31-border-hover);box-shadow:var(--p31-shadow-hover);transform:translateY(-1px)}.glass-input{background:#0d0e15cc;border:1px solid var(--p31-border);border-radius:var(--p31-radius-sm);color:var(--p31-text-primary);padding:12px;font-family:inherit;font-size:14px;transition:border-color var(--p31-duration-fast) var(--p31-ease),box-shadow var(--p31-duration-fast) var(--p31-ease);outline:none;width:100%}.glass-input:focus{border-color:var(--p31-phos-green);box-shadow:0 0 0 3px #5dcaa526}.glass-input::placeholder{color:var(--p31-text-secondary)}@keyframes stagger-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.stagger-in{animation:stagger-in var(--p31-duration-normal) var(--p31-ease) both}.btn-press{transition:transform var(--p31-duration-fast) var(--p31-ease),box-shadow var(--p31-duration-fast) var(--p31-ease)}.btn-press:active{transform:scale(.97)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.shimmer{background:linear-gradient(90deg,var(--p31-bg-surface) 25%,rgba(255,255,255,.05) 50%,var(--p31-bg-surface) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--p31-radius-sm)}@keyframes pop-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.pop-in{animation:pop-in var(--p31-duration-normal) var(--p31-ease-spring) both}@keyframes bounce{0%{transform:scale(1)}30%{transform:scale(1.15)}60%{transform:scale(.95)}to{transform:scale(1)}}.bounce{animation:bounce .4s var(--p31-ease-spring)}@keyframes price-slide-in{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}.price-slide-in{animation:price-slide-in .4s var(--p31-ease-spring) both}.p31-h1{font-size:24px;font-weight:700;letter-spacing:2px;color:var(--p31-text-primary);margin:0}.p31-h2{font-size:20px;font-weight:700;color:var(--p31-text-primary);margin:0}.p31-h3{font-size:16px;font-weight:600;color:var(--p31-text-secondary);margin:0}.p31-body{font-size:14px;font-weight:400;color:var(--p31-text-primary);line-height:1.5}.p31-caption{font-size:12px;font-weight:400;color:var(--p31-text-secondary)}.p31-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--p31-text-secondary)}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.listing-image-wrapper{overflow:hidden;border-radius:var(--p31-radius-sm)}.listing-image{transition:transform var(--p31-duration-normal) var(--p31-ease);display:block;width:100%;height:auto}.listing-image:hover{transform:scale(1.05)}
