.photocard-container{perspective:1200px;aspect-ratio:2.2/3.4;cursor:pointer;background:var(--bg-slot);border:2px solid #0000;border-radius:12px;width:100%;max-width:220px;margin:0 auto;padding:6px;position:relative;box-shadow:inset 0 2px 6px #0006,inset 0 0 1px #0009}.photocard-container.rarity-legendary{background-image:linear-gradient(var(--bg-slot), var(--bg-slot)), linear-gradient(135deg, red, #f80, #fe0, #0f6, #08f, #a0f, red);background-origin:border-box;background-clip:padding-box,border-box;border:2px solid #0000}.photocard-container.rarity-epic{border-color:#c0c5ceb3}.photocard-container.rarity-rare{border-color:#cda56499}.photocard-container.rarity-limited{border-color:#3b82f680}.photocard-container.rarity-uncommon{border-color:#a855f766}.photocard-container.rarity-common{border-color:#fff0d20f}.photocard-wrapper{background:var(--bg-halo);border:1px solid #fff0d20f;border-radius:8px;flex-direction:column;width:100%;height:100%;transition:transform .4s cubic-bezier(.2,.8,.2,1);display:flex;position:relative;overflow:hidden}:root{--owned-rarity-opacity:.5}.photocard-container.owned{border-color:#34d39999}.photocard-container.owned.rarity-legendary{background:linear-gradient(135deg, rgba(255, 0, 0, var(--owned-rarity-opacity)), rgba(255, 136, 0, var(--owned-rarity-opacity)), rgba(255, 238, 0, var(--owned-rarity-opacity)), rgba(0, 255, 102, var(--owned-rarity-opacity)), rgba(0, 136, 255, var(--owned-rarity-opacity)), rgba(170, 0, 255, var(--owned-rarity-opacity)));border:2px solid #34d39999}.photocard-container.owned.rarity-epic{background:rgba(192, 197, 206, var(--owned-rarity-opacity))}.photocard-container.owned.rarity-rare{background:rgba(205, 165, 100, var(--owned-rarity-opacity))}.photocard-container.owned.rarity-limited{background:rgba(59, 130, 246, var(--owned-rarity-opacity))}.photocard-container.owned.rarity-uncommon{background:rgba(168, 85, 247, var(--owned-rarity-opacity))}.photocard-container.owned.rarity-common{background:#ffffff26}.photocard-image-container{width:100%;transform-style:preserve-3d;background:0 0;flex:1;transition:transform .6s cubic-bezier(.4,0,.2,1);position:relative}.photocard-image-container.is-flipped{transform:rotateY(180deg)}.photocard-front,.photocard-back{backface-visibility:hidden;background:#0a0908;border-radius:8px 8px 0 0;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.photocard-back{transform:rotateY(180deg)}.photocard-img{object-fit:contain;width:100%;height:100%;display:block}.status-pill{z-index:5;font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);cursor:pointer;border:1px solid #ffffff1a;border-radius:20px;padding:3px 8px;font-size:.55rem;font-weight:600;transition:transform .2s,background .2s;position:absolute;top:8px;right:8px}.status-pill:hover{transform:scale(1.05)}.status-pill.owned{color:#34d399;background:#10b98140;border-color:#34d3994d}.status-pill.missing{color:#8a8078;background:#00000080;border-color:#fff0d21a}.want-pill{z-index:5;font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);cursor:pointer;color:#ffffff80;background:#0009;border:1px solid #ffffff26;border-radius:20px;padding:3px 8px;font-size:.55rem;font-weight:600;transition:transform .2s,background .2s;position:absolute;top:8px;left:8px}.want-pill:hover{color:#38bdf8;background:#38bdf84d;transform:scale(1.05)}.want-pill.active{color:#38bdf8;background:#38bdf84d;border-color:#38bdf880}.photocard-placeholder{width:100%;height:100%;color:var(--text-secondary);font-family:var(--font-display);letter-spacing:.05em;text-transform:uppercase;justify-content:center;align-items:center;font-size:.8rem;display:flex}.photocard-glare{pointer-events:none;z-index:2;mix-blend-mode:overlay;opacity:0;width:100%;height:100%;transition:opacity .3s;position:absolute;top:0;left:0}.photocard-container:hover .photocard-glare{opacity:1}.photocard-info{background:var(--bg-halo);flex-direction:column;justify-content:center;min-height:60px;padding:10px 10px 8px;display:flex}.photocard-header{justify-content:space-between;align-items:center;gap:4px;width:100%;margin-bottom:4px;display:flex}.photocard-name-row{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.photocard-member{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.95rem;font-weight:500;overflow:hidden}.photocard-tags-container{flex-wrap:wrap;gap:4px;display:flex}.photocard-rarity-tag{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:2px 6px;font-size:.55rem;font-weight:600;line-height:1}.tag-red{color:#e8b4fe;background:linear-gradient(135deg,#ff000026,#0088ff26);border:1px solid #aa00ff4d}.tag-orange{color:#c0c5ce;background:#c0c5ce33;border:1px solid #c0c5ce66}.tag-yellow{color:#93c5fd;background:#3b82f633;border:1px solid #3b82f666}.tag-purple{color:#d8b4fe;background:#a855f733;border:1px solid #a855f766}.tag-pink{color:#cda564;background:#cda56433;border:1px solid #cda56466}.tag-darkblue{color:#93c5fd;background:#3b82f633;border:1px solid #3b82f666}.photocard-type-tag{font-family:var(--font-body);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;background:#fff0d20f;border:1px solid #fff0d20a;border-radius:4px;padding:2px 6px;font-size:.55rem;line-height:1}.photocard-album{font-family:var(--font-body);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.7rem;font-weight:400;overflow:hidden}.photocard-description-text{font-family:var(--font-body);color:var(--text-secondary);opacity:.7;margin:4px 0 0;font-size:.6rem;line-height:1.3}.trade-pill{color:#fff6;background:#0009;border:1px solid #60a5fa33}.trade-pill:hover{color:#60a5fa;background:#60a5fa33;border-color:#60a5fa80}.trade-pill.active-trade{color:#60a5fa;background:#60a5fa40;border-color:#60a5fa8c;animation:2.5s infinite tradePulse}@keyframes tradePulse{0%,to{box-shadow:0 0 #60a5fa00}50%{box-shadow:0 0 6px 2px #60a5fa4d}}.admin-hash-overlay{z-index:5;color:#a78bfa;-webkit-backdrop-filter:blur(4px);pointer-events:all;-webkit-user-select:all;user-select:all;background:#000000bf;border:1px solid #a78bfa4d;border-radius:4px;padding:3px 6px;font-family:monospace;font-size:.5rem;position:absolute;bottom:6px;right:6px}
.auth-container{color:#fff;background:linear-gradient(135deg,#121212 0%,#1a1a1a 100%);justify-content:center;align-items:center;width:100%;min-height:100vh;font-family:Inter,-apple-system,sans-serif;display:flex}.auth-card{-webkit-backdrop-filter:blur(12px);background:#1e1e1eb3;border:1px solid #ffffff1a;border-radius:24px;flex-direction:column;gap:24px;width:100%;max-width:440px;padding:40px;display:flex;box-shadow:0 25px 50px -12px #00000080}.auth-header{text-align:center;margin-bottom:8px}.auth-title{background:linear-gradient(90deg,#c9a96e,#f1e0ac);-webkit-text-fill-color:transparent;letter-spacing:-.5px;-webkit-background-clip:text;margin:0;font-size:28px;font-weight:700}.auth-subtitle{color:#fff9;margin-top:8px;font-size:14px}.auth-tabs{background:#0003;border-radius:12px;margin-bottom:8px;padding:4px;display:flex}.auth-tab{text-align:center;cursor:pointer;color:#ffffff80;background:0 0;border:none;border-radius:8px;flex:1;padding:10px;font-size:14px;font-weight:600;transition:all .3s}.auth-tab.active{color:#fff;background:#ffffff1a;box-shadow:0 4px 12px #0000001a}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-input-group{flex-direction:column;gap:6px;display:flex}.auth-input-group label{color:#fffc;font-size:13px;font-weight:500}.auth-input{color:#fff;background:#0003;border:1px solid #ffffff1a;border-radius:12px;outline:none;padding:12px 16px;font-size:15px;transition:all .2s}.auth-input:focus{background:#0000004d;border-color:#c9a96e;box-shadow:0 0 0 2px #c9a96e33}.auth-button{color:#121212;cursor:pointer;background:linear-gradient(135deg,#c9a96e 0%,#b39151 100%);border:none;border-radius:12px;margin-top:8px;padding:14px;font-size:16px;font-weight:700;transition:all .3s}.auth-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #c9a96e4d}.auth-button:active:not(:disabled){transform:translateY(0)}.auth-button:disabled{opacity:.7;cursor:not-allowed;filter:grayscale(.5)}.auth-error{color:#ef4444;text-align:center;background:#ef44441a;border:1px solid #ef444433;border-radius:10px;padding:12px;font-size:13px}
