:root{--color-bg:#f5f7fb;--color-card:#fff;--color-sidebar:#111827;--color-text:#111827;--color-subtext:#6b7280;--color-border:#e5e7eb;--color-primary:#0a74da;--color-primary-hover:#095ab5;--color-danger:#ef4444;--font-main:"Segoe UI", Tahoma, Geneva, Verdana, sans-serif}body.dark,body.login-mode{--color-bg:#0f172a;--color-card:#111827;--color-sidebar:#020617;--color-text:#f9fafb;--color-subtext:#9ca3af;--color-border:#1f2937;--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-danger:#ef4444}body{font-family:var(--font-main);background-color:var(--color-bg);color:var(--color-text);margin:0;padding:0}.app-layout{background:var(--color-bg);height:100vh;color:var(--color-text);display:flex}.sidebar{background:var(--color-sidebar);color:#fff;flex-direction:column;width:220px;padding:20px;display:flex}.sidebar a{color:#fff;border-radius:8px;align-items:center;gap:10px;padding:10px;text-decoration:none;display:flex}.sidebar a:hover{background:#ffffff14}.header{border-bottom:1px solid var(--color-border);background:var(--color-card);justify-content:space-between;align-items:center;height:64px;padding:0 20px;display:flex}.main-content{flex-direction:column;flex:1;display:flex}.main-inner{background:var(--color-bg);flex:1;padding:24px;overflow-y:auto}input,select,textarea{background:var(--color-card);color:var(--color-text);border:1px solid var(--color-border);border-radius:8px;outline:none;padding:8px 10px}input::placeholder,textarea::placeholder{color:var(--color-subtext)}.card{background:var(--color-card);color:var(--color-text);border-radius:12px;padding:20px}table{border-collapse:collapse;background:var(--color-card);width:100%;color:var(--color-text)}thead{background:var(--color-card)}th{color:var(--color-text);text-align:left;border-bottom:1px solid var(--color-border);padding:12px;font-weight:600}td{color:var(--color-text);padding:12px}tr{border-bottom:1px solid var(--color-border)}tr:hover{background:#0000000a}body.dark tr:hover,body.login-mode tr:hover{background:#ffffff0f}.button-primary{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 14px}.button-primary:hover{background:var(--color-primary-hover)}.error-message{color:var(--color-danger);text-align:center;margin-top:10px;font-size:14px}.compra-container{background:var(--color-card);color:var(--color-text)}.form{flex-direction:column;gap:10px;display:flex}.section-title{color:var(--color-subtext);margin-top:15px;font-size:14px}.item-row{align-items:center;gap:8px;display:flex}.small{width:90px}.text{color:var(--color-text)}.text-muted{color:var(--color-subtext)}.text-link{color:var(--color-primary);text-decoration:underline}.dropzone{border:2px dashed var(--color-border);text-align:center;background:var(--color-bg);border-radius:10px;padding:20px;position:relative}.file-input{opacity:0;cursor:pointer;position:absolute;inset:0}.preview{margin-top:10px}.preview-img{border-radius:10px;max-width:100%}.btn-secondary{border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;background:0 0;border-radius:8px;padding:8px}.btn-danger{background:var(--color-danger);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:6px 8px}.btn-cancel{border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;background:0 0;border-radius:8px;margin-left:10px;padding:10px}.totales{margin-top:15px;font-weight:700}
