:root{--color-bg:#f7f9fb;--color-surface:#fff;--color-text:#1c2530;--color-muted:#6b7480;--color-border:#dfe6ee;--color-primary:#0b57a6;--color-primary-dark:#084381;--color-accent:#41bcff;--color-teal:#56cdd1;--color-indigo:#573dfe;--color-danger:#b23b3b;--radius:10px;--shadow:0 1px 3px #0f192814, 0 4px 16px #0f19280f;font-family:Lato,Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);margin:0}#root{flex-direction:column;min-height:100vh;display:flex}a{color:var(--color-primary-dark)}button{cursor:pointer;font-family:inherit}.btn{border-radius:var(--radius);background:var(--color-primary);color:#fff;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.2rem;font-size:.95rem;font-weight:600;transition:background .15s;display:inline-flex}.btn:hover{background:var(--color-primary-dark)}.btn:disabled{cursor:not-allowed;background:#b9c3cf}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:#eef3f8}.btn-danger{background:var(--color-danger)}.btn-danger:hover{background:#8f2f2f}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow)}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=date],select,textarea{border:1px solid var(--color-border);color:var(--color-text);background:#fff;border-radius:8px;width:100%;padding:.55rem .7rem;font-family:inherit;font-size:.95rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--color-primary);outline-offset:1px}label{color:var(--color-muted);margin-bottom:.3rem;font-size:.85rem;font-weight:600;display:block}.container{flex:1;width:100%;max-width:1500px;margin:0 auto;padding:1.5rem 1rem 3rem}.error-text{color:var(--color-danger);font-size:.9rem}.muted{color:var(--color-muted)}.slot-grid{grid-template-columns:repeat(auto-fit,minmax(140px,170px));justify-content:center;gap:1rem;display:grid}.photo-grid{grid-template-columns:repeat(auto-fit,minmax(100px,130px));justify-content:center;gap:.7rem;display:grid}@media (width<=480px){.container{padding:1rem .75rem 2.5rem}.slot-grid{grid-template-columns:repeat(auto-fit,minmax(115px,140px));gap:.7rem}.photo-grid{grid-template-columns:repeat(auto-fit,minmax(85px,110px));gap:.5rem}}.stack{flex-direction:column;gap:.9rem;display:flex}.row{flex-wrap:wrap;align-items:center;gap:.9rem;display:flex}
