@import "https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=DM+Sans:wght@400;500;700&family=Courier+Prime&display=swap";:root{--font-sans:"DM Sans", -apple-system, sans-serif;--font-display:"DM Serif Display", serif;--font-mono:"Courier Prime", monospace;--bg-dark:#f4f1ea;--bg-card:#fff;--bg-paper:#fdfbf7;--bg-cork:#e5d6b6;--bg-card-hover:#fffdf9;--bg-input:#fff;--border-color:#2b2b2b;--border-glow:#2b2b2b;--text-primary:#2b2b2b;--text-secondary:#7a756c;--text-inverse:#fff;--text-muted:#9e9991;--accent-primary:#e63946;--accent-primary-hover:#d62828;--accent-secondary:#1d3557;--accent-glow:transparent;--accent-success:#2a9d8f;--accent-danger:#e63946;--accent-highlight:#f4a261;--spacing-1:.25rem;--spacing-2:.5rem;--spacing-3:.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--shadow-sm:2px 2px 0px var(--border-color);--shadow-md:4px 4px 0px var(--border-color);--shadow-glow:4px 4px 0px var(--border-color)}[data-theme=dark]{--bg-dark:#1f1d1b;--bg-card:#2b2825;--bg-paper:#322f2c;--bg-cork:#2a241c;--bg-card-hover:#36322f;--bg-input:#23201d;--border-color:#0f0e0d;--border-glow:#1a1816;--text-primary:#ebe5db;--text-secondary:#afa89d;--text-inverse:#1f1d1b;--text-muted:#7a7369;--accent-primary:#e85d6b;--accent-primary-hover:#d94553;--accent-secondary:#5b92b0;--accent-success:#3eaf9e;--accent-danger:#e85d6b;--accent-highlight:#eca765;--shadow-sm:2px 2px 0px #0f0e0d;--shadow-md:4px 4px 0px #0f0e0d;--shadow-glow:4px 4px 0px #0f0e0d}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-dark);color:var(--text-primary);-webkit-font-smoothing:antialiased;background-image:radial-gradient(var(--text-muted) 1px, transparent 1px);background-size:8px 8px;flex-direction:column;min-height:100vh;line-height:1.6;display:flex;position:relative;overflow-x:hidden}.glass-panel{background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all .1s;position:relative}.glass-panel:hover{background:var(--bg-card-hover);box-shadow:6px 6px 0px var(--border-color);transform:translate(-2px,-2px)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-primary);font-weight:400;line-height:1.1}.title{color:var(--text-primary);margin-bottom:var(--spacing-6);border-bottom:3px solid var(--border-color);padding-bottom:var(--spacing-2);font-size:3rem}.subtitle{color:var(--text-secondary);font-size:1.125rem;font-weight:500;font-family:var(--font-sans)}.btn{justify-content:center;align-items:center;gap:var(--spacing-2);padding:0 var(--spacing-5);border-radius:var(--radius-md);font-family:var(--font-mono);cursor:pointer;border:2px solid var(--border-color);box-shadow:var(--shadow-sm);letter-spacing:.05em;height:42px;font-size:.9rem;font-weight:600;transition:all .1s;display:inline-flex;position:relative}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:translate(2px,2px)}.btn:active:not(:disabled){box-shadow:0px 0px 0px var(--border-color);transform:translate(2px,2px)}.btn-primary{background:var(--accent-primary);color:var(--text-inverse)}.btn-primary:hover:not(:disabled){background:var(--accent-primary-hover)}.btn-secondary{background:var(--accent-secondary);color:var(--text-inverse)}.btn-secondary:hover:not(:disabled){background:#152740}.btn-danger{background:var(--accent-danger);color:var(--text-inverse)}.btn-danger:hover:not(:disabled){background:#c1121f}.btn-success{background:var(--accent-success);color:var(--text-inverse)}.btn-success:hover:not(:disabled){background:#21867a}.input-group{gap:var(--spacing-2);margin-bottom:var(--spacing-4);flex-direction:column;display:flex;position:relative}.input-label{color:var(--text-secondary);font-size:.875rem;font-weight:500;font-family:var(--font-sans)}.input-field,.select-field{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);color:var(--text-primary);padding:0 var(--spacing-4);font-family:var(--font-sans);background:#ffffff08;border-radius:9999px;width:100%;height:42px;font-size:.95rem;font-weight:500;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:inset 0 2px 4px #0000001a}.input-field::placeholder,.select-field::placeholder{color:var(--text-muted)}.input-field:hover,.select-field:hover{background:#ffffff0f;border-color:#ffffff26}.input-field:focus,.select-field:focus{border-color:var(--accent-primary);background:#ffffff0f;outline:none;box-shadow:0 0 0 3px #3b82f633,inset 0 1px 2px #0003}.input-field:disabled,.select-field:disabled{opacity:.6;cursor:not-allowed;background:#ffffff05}.search-wrapper{align-items:center;width:100%;display:flex;position:relative}.search-wrapper svg{color:var(--text-muted);pointer-events:none;position:absolute;left:1rem}.search-wrapper .input-field{padding-left:2.75rem}.card-item:hover{border-color:var(--accent-primary);transform:translateY(-5px);box-shadow:0 10px 30px #0006}.qty-btn{border-radius:4px;transition:all .2s}.qty-btn:hover{transform:scale(1.1);color:var(--accent-primary)!important;background:#ffffff1a!important}.qty-btn:active{transform:scale(.9)}.app-container{flex-direction:column;min-height:100vh;display:flex}.navbar{padding:calc(.75rem + env(safe-area-inset-top)) calc(1.5rem + env(safe-area-inset-right)) .75rem calc(1.5rem + env(safe-area-inset-left));border-bottom:3px solid var(--border-color);background:var(--bg-card);z-index:50;width:100%;box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;transition:all .1s;display:flex;position:sticky;top:0}.nav-brand{font-size:1.5rem;font-weight:700;font-family:var(--font-display);align-items:center;gap:var(--spacing-2);color:var(--text-primary);display:flex}.nav-brand svg{color:var(--accent-primary)}.nav-links{gap:.5rem;display:flex}.nav-link{color:var(--text-secondary);font-weight:600;font-family:var(--font-mono);white-space:nowrap;border-radius:var(--radius-sm);border:2px solid #0000;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;text-decoration:none;transition:all .1s;display:flex;position:relative}.nav-link:hover{color:var(--text-primary);background:var(--bg-card-hover);border-color:var(--border-color);box-shadow:2px 2px 0px var(--border-color);transform:translate(-1px,-1px)}.nav-link.active{color:var(--accent-primary);border-color:var(--border-color);background:var(--bg-card-hover);transform:translate(1px,1px);box-shadow:inset 2px 2px #0000001a}.main-content{padding:var(--spacing-6) calc(var(--spacing-8) + env(safe-area-inset-right)) calc(var(--spacing-6) + env(safe-area-inset-bottom)) calc(var(--spacing-8) + env(safe-area-inset-left));flex:1;width:100%;max-width:1200px;margin:0 auto}@keyframes fadeIn{0%{opacity:0;filter:blur(5px);transform:translateY(20px)}to{opacity:1;filter:blur();transform:translateY(0)}}.animate-fade-in{opacity:0;animation:.6s cubic-bezier(.16,1,.3,1) forwards fadeIn}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.loading-spinner{border:4px solid #ffffff1a;border-left-color:var(--accent-primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.scanner-container{border-radius:var(--radius-xl);width:100%;max-width:600px;box-shadow:var(--shadow-glow);border:1px solid var(--border-color);margin:0 auto;position:relative;overflow:hidden}.scanner-video{width:100%;height:auto;display:block}.scanner-overlay{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0;overflow:hidden}.scanner-frame{border-radius:var(--radius-md);border:3px solid #ffffffb3;width:70%;height:85%;position:relative;box-shadow:0 0 0 9999px #0009,inset 0 0 20px #00000080}.scanner-frame:after{content:"";background:var(--accent-primary);width:100%;height:2px;box-shadow:none;animation:2s linear infinite scan;position:absolute;top:0;left:0}@keyframes scan{0%{top:0}50%{top:100%}to{top:0}}.cards-grid{gap:var(--spacing-6);margin-top:var(--spacing-6);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));display:grid}.card-item{padding:var(--spacing-4);gap:var(--spacing-2);flex-direction:column;display:flex}.card-image-placeholder{aspect-ratio:2.5/3.5;border-radius:var(--radius-md);width:100%;color:var(--text-muted);border:1px solid var(--border-color);background:#0000004d;justify-content:center;align-items:center;font-size:3rem;display:flex;overflow:hidden}.card-image-placeholder img{object-fit:cover;width:100%;height:100%;transition:transform .4s cubic-bezier(.16,1,.3,1)}.card-item:hover .card-image-placeholder img{transform:scale(1.05)}.badge{color:var(--text-secondary);background:#ffffff1a;border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.badge-gundam{color:#fca5a5;background:#dc262633;border:1px solid #dc26264d}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;width:100vw;height:100vh;padding:var(--spacing-4);background:#000c;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}.modal-content{background:var(--bg-dark);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--spacing-6);width:100%;max-width:500px;box-shadow:0 20px 25px -5px #00000080,0 10px 10px -5px #0000000a}.modal-header{margin-bottom:var(--spacing-4);justify-content:space-between;align-items:center;display:flex}.login-card{padding:3rem}.home-container{flex-direction:column;gap:3rem;padding:2rem 0;display:flex}.hero-section{text-align:center;background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-xl);max-width:800px;box-shadow:var(--shadow-md);flex-direction:column;align-items:center;margin:0 auto;padding:3rem;display:flex;position:relative}.hero-badge{background:var(--accent-highlight);border:2px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-mono);box-shadow:2px 2px 0px var(--border-color);align-items:center;gap:.5rem;margin-bottom:2rem;padding:.25rem .75rem;font-size:.85rem;font-weight:700;display:inline-flex;transform:rotate(-2deg)}.hero-title{color:var(--text-primary);margin-bottom:1.5rem;font-size:5rem;line-height:1.1}.hero-subtitle{color:var(--text-secondary);font-size:1.25rem;font-family:var(--font-sans);max-width:600px;margin-bottom:3rem;line-height:1.6}.stats-row{justify-content:center;gap:2rem;width:100%;display:flex}.stat-card{text-align:center;background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex:1;padding:1.5rem}.stat-card h3{font-size:2.5rem;font-family:var(--font-mono);color:var(--text-primary);margin-bottom:.25rem}.stat-card p{color:var(--text-secondary);font-family:var(--font-sans);text-transform:uppercase;font-size:.85rem;font-weight:700}.action-cards{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.action-card{background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-6);cursor:pointer;box-shadow:var(--shadow-md);flex-direction:column;transition:all .2s;display:flex;position:relative;overflow:hidden}.action-card:hover{background:var(--bg-card-hover);box-shadow:6px 6px 0px var(--border-color);transform:translate(-2px,-2px)}.action-card:active{box-shadow:2px 2px 0px var(--border-color);transform:translate(2px,2px)}.action-card:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(90deg,#fff0 0%,#fff6 50%,#fff0 100%);width:50%;height:100%;transition:none;position:absolute;top:0;left:-150%;transform:skew(-25deg)}[data-theme=dark] .action-card:after{background:linear-gradient(90deg,#fff0 0%,#ffffff1a 50%,#fff0 100%)}.action-card:hover:after{animation:.75s ease-in-out forwards actionCardShimmer}@keyframes actionCardShimmer{to{left:200%}}.action-card-arrow{bottom:var(--spacing-6);right:var(--spacing-6);opacity:0;color:var(--text-muted);transition:all .3s cubic-bezier(.16,1,.3,1);position:absolute;transform:translate(-10px)}.action-card:hover .action-card-arrow{opacity:1;color:var(--text-primary);transform:translate(0)}.action-icon-wrapper{color:var(--accent-primary);border:2px solid var(--border-color);box-shadow:var(--shadow-sm);background:var(--bg-card);border-radius:50%;margin-bottom:1.5rem;padding:1rem;display:inline-flex}.action-card:nth-child(2) .action-icon-wrapper{color:var(--accent-secondary)}.action-card:nth-child(3) .action-icon-wrapper{color:var(--accent-highlight)}.action-card h2{margin-bottom:var(--spacing-2);color:var(--text-primary);font-size:1.75rem}.action-card p{color:var(--text-secondary);font-family:var(--font-sans);font-size:.9rem;line-height:1.5}.profile-modal{animation:.3s cubic-bezier(.16,1,.3,1) forwards scaleIn}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (width<=768px){.profile-grid{flex-direction:column!important}}.chart-point-group .chart-tooltip{opacity:0;pointer-events:none;font-weight:700;transition:opacity .2s,transform .2s;transform:translateY(5px)}.chart-point-group:hover .chart-tooltip{opacity:1;transform:translateY(0)}.chart-hover-target{cursor:crosshair}.chart-point-group:hover circle[r="4"]{r:6;transition:all .2s;fill:#fff!important}.set-number-guide{width:220px;padding:var(--spacing-3);z-index:20;pointer-events:none;position:absolute;top:-10px;right:-240px}@media (width<=768px){.set-number-guide{width:100%;margin-top:var(--spacing-2);position:relative;top:0;right:0}}.guide-header{align-items:center;gap:var(--spacing-1);margin-bottom:var(--spacing-2);display:flex}.text-accent{color:var(--accent-primary)}.card-blueprint{border-radius:var(--radius-sm);width:100px;height:140px;margin:0 auto var(--spacing-3) auto;background:#00000080;border:1px solid #ffffff1a;position:relative;overflow:hidden}.card-blueprint-art{background:#ffffff0d;border-radius:2px;width:90%;height:45%;position:absolute;top:5%;left:5%}.card-blueprint-text-1{background:#ffffff0d;border-radius:2px;width:70%;height:5%;position:absolute;top:55%;left:5%}.card-blueprint-text-2{background:#ffffff0d;border-radius:2px;width:90%;height:20%;position:absolute;top:65%;left:5%}.card-blueprint-highlight{border:1px solid var(--accent-primary);background:#3b82f64d;border-radius:2px;position:absolute;box-shadow:0 0 10px #3b82f680}.highlight-pulse{background:var(--accent-primary);opacity:.5;width:100%;height:100%;animation:1.5s ease-in-out infinite alternate pulse-op;position:absolute;top:0;left:0}@keyframes pulse-op{0%{opacity:.2}to{opacity:.7}}.guide-text{color:var(--text-secondary);text-align:center;font-size:.75rem;line-height:1.4}.help-tooltip-container{cursor:help;margin-left:var(--spacing-1);align-items:center;display:inline-flex;position:relative}.help-tooltip-container:hover .help-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.help-tooltip{background:var(--bg-card-hover);border:1px solid var(--border-glow);width:200px;padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-md);color:var(--text-primary);text-align:center;box-shadow:var(--shadow-glow);opacity:0;visibility:hidden;z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:.75rem;font-weight:400;transition:all .2s;position:absolute;bottom:120%;left:50%;transform:translate(-50%)translateY(5px)}.help-tooltip:after{content:"";border-style:solid;border-width:6px;border-color:var(--border-glow) transparent transparent transparent;position:absolute;top:100%;left:50%;transform:translate(-50%)}@media (width<=768px){.main-content{padding:var(--spacing-4) var(--spacing-4)}.app-container{padding-bottom:0}.sidebar-overlay{z-index:90;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;width:100vw;height:100vh;position:fixed;top:0;left:0}.nav-links{background:var(--bg-dark);border-right:1px solid var(--border-color);z-index:100;width:280px;height:100vh;box-shadow:var(--shadow-md);flex-direction:column;justify-content:flex-start;align-items:flex-start;margin:0;padding:0;transition:left .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:-280px}.nav-links.open{left:0}.nav-link{padding:var(--spacing-4);border-bottom:1px solid #ffffff0d;flex-direction:row;align-items:center;gap:1rem;width:100%;font-size:1rem;display:flex}.desktop-only{display:none!important}.mobile-only{display:flex!important}.login-card{padding:var(--spacing-4)!important}.chat-modal-content{border-radius:0!important;width:100vw!important;max-width:100vw!important;height:100vh!important;padding:0!important}.cards-grid{gap:var(--spacing-4);grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.navbar{padding:var(--spacing-3) var(--spacing-4)}.hero-title{font-size:2.5rem}.stats-row{flex-direction:column;gap:1rem}.action-cards{grid-template-columns:1fr}.scanner-frame{width:90%;height:70%}.input-group>div{flex-direction:column}.modal-content{padding:var(--spacing-4);max-width:95%}}.card-back-container{aspect-ratio:2.5/3.5;background:var(--bg-card);border-radius:var(--radius-md);border:2px solid var(--border-color);justify-content:center;align-items:center;width:100%;padding:6px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 10px #0000000d}.card-back-container:before{content:"";background-image:radial-gradient(var(--text-muted) 1px, transparent 1px);opacity:.3;pointer-events:none;background-size:6px 6px;position:absolute;inset:0}.card-back-inner{border:2px dashed var(--border-color);border-radius:calc(var(--radius-md) - 2px);background:var(--bg-card);z-index:1;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.card-back-border{border:4px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-card);justify-content:center;align-items:center;width:80%;height:85%;display:flex;position:relative}.card-back-border:after{content:"";border:1px solid var(--border-color);border-radius:2px;position:absolute;inset:4px}.card-back-content{flex-direction:column;justify-content:center;align-items:center;display:flex;transform:rotate(-5deg)}.card-back-text{font-family:var(--font-display);color:var(--border-color);text-shadow:2px 2px 0px var(--accent-highlight);font-size:3.5rem;line-height:1}.fab{border:2px solid var(--border-color);width:56px;height:56px;box-shadow:var(--shadow-md);z-index:100;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:fixed;bottom:100px;right:2rem}.fab:hover{box-shadow:6px 6px 0px var(--border-color);transform:translate(-2px,-2px)scale(1.05)}:focus-visible{outline:3px solid var(--accent-primary);outline-offset:4px;border-radius:inherit}
