:root{--primary: #2dd4bf;--primary-dark: #0d9488;--bg-gradient: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);--card-bg: rgba(255, 255, 255, .8);--glass-border: rgba(255, 255, 255, .3);--text-main: #1e293b;--text-muted: #64748b;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg-gradient);color:var(--text-main);min-height:100vh;display:flex;flex-direction:column}#root{width:100%;max-width:500px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column}.app-container{padding:1.5rem;flex:1;display:flex;flex-direction:column}h1,h2,h3{font-weight:700;color:#0f172a}button{cursor:pointer;border:none;border-radius:12px;font-family:inherit;transition:background-color .2s ease,opacity .2s ease,transform .2s ease}button:active{transform:scale(.98)}input,select,textarea{width:100%;padding:.75rem 1rem;border-radius:12px;border:1px solid #e2e8f0;background:#fff;font-family:inherit;font-size:1rem;margin-bottom:1rem}input:focus{outline:2px solid var(--primary);border-color:transparent}.glass-card{background:#fffffff0;border:1px solid rgba(255,255,255,.55);border-radius:20px;box-shadow:var(--shadow-md);padding:1.5rem;margin-bottom:1rem;position:relative;z-index:10}.gradient-background{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(135deg,#fde8ee,#e2f7ea 48%,#dfeaff)}.gradient-background:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#dfeaff,#f4e4fa 48%,#e2f7ea);opacity:0;animation:gradient-crossfade 18s ease-in-out infinite alternate}.gradient-background.is-paused:after{animation-play-state:paused}@keyframes gradient-crossfade{to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}button:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline:2px solid var(--primary-dark);outline-offset:3px}.inventory-card{content-visibility:auto;contain-intrinsic-size:auto 180px}.report-actions{display:flex;flex-wrap:wrap;gap:.5rem}.report-actions button{flex:1;justify-content:center}.field-label{display:block;font-size:.85rem;font-weight:600;color:var(--text-muted);margin-bottom:.5rem}.inline-error{padding:.85rem;color:#991b1b;background:#fef2f2;border-radius:10px;margin-bottom:1rem}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.gradient-background:after{opacity:.5}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translate(-50%,-14px)}to{opacity:1;transform:translate(-50%)}}.animate-slide-up{animation:slideUp .4s ease forwards;position:relative;z-index:10}.animate-fade-in{animation:fadeIn .3s ease forwards;position:relative;z-index:10}@media(max-width:400px){.hide-mobile{display:none!important}}.inventory-banner{position:sticky;top:0;z-index:20;background:#eef2ff;border:1px solid #c7d2fe;border-radius:12px;padding:.8rem 1rem;margin-bottom:1.2rem;box-shadow:0 2px 5px #00000008}.inventory-banner label{display:block;font-weight:700;color:#3730a3;margin-bottom:.35rem}.inventory-banner select{width:100%;padding:.7rem;background:#fff;border:1px solid #a5b4fc;border-radius:8px;color:#1e293b;opacity:1}.inventory-banner small{display:block;margin-top:.4rem}.management-page{display:grid;gap:1rem}.management-page>button{justify-self:start;padding:.7rem}.management-form{padding:1rem;display:grid;gap:.8rem;text-align:left}.management-form label{display:grid;gap:.4rem}.management-form input{margin:0}.management-form button{padding:.7rem}.primary-action{background:var(--primary);color:#fff;padding:.9rem 1rem;font-weight:600}.permission-row{padding:1rem;margin-bottom:1rem;display:flex;flex-wrap:wrap;gap:1rem}.permission-row legend{font-weight:600}.permission-row label{display:flex;align-items:center;gap:.5rem;min-height:40px}.permission-row input,.transfer-check input{width:20px;height:20px;margin:0}.transfer-panel{border:2px solid #6366f1;padding:1rem;display:grid;gap:.8rem;margin-bottom:1rem}.transfer-panel select{padding:.7rem;width:100%;border:1px solid #cbd5e1;border-radius:8px;background:#fff}.transfer-check{display:flex;align-items:center;gap:.5rem;margin-bottom:.7rem}.transfer-quantity{max-width:150px;margin-top:.4rem}button:disabled{cursor:not-allowed;opacity:.5}
