*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{color:#e2e8f0;background:#0f1117;min-height:100vh;font-family:Segoe UI,system-ui,sans-serif}a{color:#7c6af7;text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;color:#fff;background:#7c6af7;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;transition:background .2s}button:hover:not(:disabled){background:#6355d4}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:#2d3748}button.secondary:hover:not(:disabled){background:#4a5568}button.danger{background:#e53e3e}button.danger:hover:not(:disabled){background:#c53030}input,textarea,select{color:#e2e8f0;background:#1a202c;border:1px solid #2d3748;border-radius:6px;outline:none;width:100%;padding:.5rem .75rem;font-size:.9rem}input:focus,textarea:focus,select:focus{border-color:#7c6af7}.auth-container{background:#1a202c;border-radius:12px;flex-direction:column;gap:1rem;max-width:400px;margin:10vh auto;padding:2rem;display:flex}.auth-container h1{color:#7c6af7;text-align:center;font-size:1.5rem}.auth-container h2{text-align:center;font-size:1.2rem}.auth-container form{flex-direction:column;gap:.75rem;display:flex}.error{color:#fc8181;font-size:.85rem}.dashboard header{background:#1a202c;border-bottom:1px solid #2d3748;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.dashboard header div{gap:.75rem;display:flex}.dashboard main{padding:2rem}.deck-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;display:grid}.deck-card{background:#1a202c;border:1px solid #2d3748;border-radius:10px;flex-direction:column;gap:.5rem;padding:1rem;transition:border-color .2s;display:flex}.deck-card:hover{border-color:#7c6af7}.deck-card h3{font-size:1rem}.deck-card p{color:#a0aec0;font-size:.85rem}.deck-card small{color:#718096;font-size:.75rem}.format-badge{color:#a0aec0;text-transform:capitalize;background:#2d3748;border-radius:4px;margin-left:.5rem;padding:.1rem .4rem;font-size:.75rem;display:inline-block}.delete-btn{color:#fc8181;background:0 0;border:1px solid #fc8181;margin-top:.5rem}.delete-btn:hover{color:#fff;background:#fc8181}.empty-state{text-align:center;color:#718096;flex-direction:column;align-items:center;gap:1rem;padding:4rem;display:flex}.modal-overlay{z-index:100;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:#1a202c;border-radius:12px;flex-direction:column;gap:1rem;width:100%;max-width:440px;padding:2rem;display:flex}.modal form{flex-direction:column;gap:.75rem;display:flex}.modal-actions{gap:.75rem;display:flex}.deck-page{max-width:1200px;margin:0 auto;padding:1.5rem 2rem}nav{margin-bottom:1rem}.deck-header{background:#1a202c;border-radius:10px;margin-bottom:1.5rem;padding:1.5rem}.deck-header h1{margin-bottom:.5rem;font-size:1.5rem}.deck-actions{gap:.75rem;margin-top:1rem;display:flex}.deck-header form{flex-direction:column;gap:.75rem;max-width:500px;display:flex}.deck-layout{grid-template-columns:1fr 340px;gap:1.5rem;display:grid}.card-list{flex-direction:column;gap:1rem;display:flex}.board-section h3{color:#a0aec0;text-transform:uppercase;margin-bottom:.5rem;font-size:.85rem}.card-row{background:#1a202c;border-radius:6px;align-items:center;gap:.5rem;padding:.4rem .6rem;display:flex}.card-row:hover{background:#2d3748}.card-thumb{border-radius:3px;width:32px}.card-qty{color:#a0aec0;min-width:24px;font-size:.85rem}.card-name{flex:1;font-size:.9rem}.remove-btn{color:#718096;background:0 0;border:none;padding:.2rem .4rem;font-size:.8rem}.remove-btn:hover{color:#fc8181}.card-search{background:#1a202c;border-radius:10px;flex-direction:column;align-self:start;gap:.75rem;padding:1rem;display:flex;position:sticky;top:1rem}.card-search form{gap:.5rem;display:flex}.card-search form input{flex:1}.card-search form button{width:auto}.search-results{flex-direction:column;gap:.5rem;max-height:60vh;display:flex;overflow-y:auto}.search-card{border-radius:6px;align-items:center;gap:.5rem;padding:.4rem;display:flex}.search-card:hover{background:#2d3748}.search-card span{flex:1;font-size:.85rem}.search-card button{width:auto;padding:.3rem .6rem;font-size:.8rem}.loading{color:#a0aec0;justify-content:center;align-items:center;min-height:100vh;display:flex}@media (width<=768px){.deck-layout{grid-template-columns:1fr}.card-search{position:static}}
